gpt4 book ai didi

Python append 向每个变量添加一个项目

转载 作者:太空宇宙 更新时间:2023-11-04 07:42:22 24 4
gpt4 key购买 nike

我正在迭代一个列表并试图从它的项目创建子列表。每次我 append 到一个变量时,该值都会添加到我定义的每个其他变量中。我已大幅精简代码以进行说明。

item = 'things.separated.by.periods'.split('.')
list1 = list2 = []

i = item.pop(0)
print i
list1.append(i)
i = item.pop(0)
print i
list2.append(i)

print(item, list1, list2)

返回:

things
separated
(['by', 'periods'], ['things', 'separated'], ['things', 'separated'])

我的预期:

things
separated
(['by', 'periods'], ['things'], ['separated'])

我认为这可能回答here ,但我不确定如何将此修复程序应用于我的情况。提前致谢!

最佳答案

问题是线路

list1 = list2 = []

这使得 list1list2 引用完全相同的列表,因此如果您将一个项目 append 到一个列表,您也会将它 append 到另一个列表。改成

list1 = []
list2 = []

关于Python append 向每个变量添加一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17119647/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com