在for循环中列出append()

在for循环中列出append(),第1张

在for循环中列出append()

list.append
函数不返回任何值(而是
None
),它只是将值添加到用于调用该方法的列表中。

在第一个循环中,您将分配

None
(由于不返回
append
)给
a
,然后在第二个循环中,它将尝试调用
a.append
,因为
a isNone
它将引发您看到的Exception

您只需要将其更改为:

a=[]for i in range(5):        a.append(i)print(a)# [0, 1, 2, 3, 4]

list.append
这就是所谓的 变异或破坏性 方法,即它将破坏或变异先前的对象成为一个新的(或新的状态)。

如果您想基于一个列表创建一个新列表而不破坏或更改它,则可以执行以下 *** 作:

a=['a', 'b', 'c']result = a + ['d']print result# ['a', 'b', 'c', 'd']print a# ['a', 'b', 'c']

仅作为必然结果,您可以

append
通过执行以下 *** 作来模仿该方法:

a=['a', 'b', 'c']a = a + ['d']print a# ['a', 'b', 'c', 'd']


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5644840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存