[英]Python - Question about initialising lists with [None] versus with just []
我目前正在遍历一些字符串列表以填充新列表。 原来我有:
z_locations = ['50', '100', '150', '250', '500']
path = [None]
for counter, value in enumerate(z_locations):
path.append('Desktop/Data/z_' + value)
我的列表path
将作为长度为 6 的列表出现,我的新列表path
的第一个元素将只是NoneType
。 我可以通过更改为:
z_locations = ['50', '100', '150', '250', '500']
path = []
for counter, value in enumerate(z_locations):
path.append('Desktop/Data/z_' + value)
它删除了作为第一个元素的NoneType
并且只按照我最初的意图进行复制。 但是,我不确定为什么会发生这种情况。 在创建新列表之前,我还没有遇到过这种NoneType
。 有人可以请教我为什么会发生这种情况吗?
谢谢。
发生这种情况是因为append
在列表的末尾append
了一个元素。 您准备好的列表中包含None
,因此您添加的任何元素都将放在它之后,例如[None, ...]
。 因此,当您获得第一个元素时,它会给您None
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.