您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python:list.extend和list .__ iadd__之间的区别

Python:list.extend和list .__ iadd__之间的区别

+=使对象有 就地更改对象。但这取决于的类型x,这并不意味着对象已就地更改。

这样,+= 仍然需要重新分配x;要么x.__iadd__()返回x或新对象返回; x += something确实翻译成:

x = x.__iadd__(something)

由于+=包含作业,因此在中x标记为本地g()

x.extend()另一方面,这不是一项任务。程序员已决定x始终是带有.extend()方法的对象,并直接使用它。Python看不到分配,x标记为全局。

python 2022/1/1 18:26:09 有164人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶