我正在使用 .append
用字符串填充一个空列表,但我的项目被 append 了多次。第一个字符串追加 5 次后,第二个字符串追加 4 次。为什么会这样?
这是我使用的代码
kw_list_1 = []
def add_kw():
kw_1 = raw_input('enter your first keyword - ')
for kw in kw_1:
kw_list_1.append(kw_1)
kw_2 = raw_input('enter second keyword - ')
for kw2 in kw_2:
kw_list_1.append(kw_2)
print kw_list_1
例如,如果我对 kw_1
使用 'apple'
对 kw_2
使用 'pear'
这是返回
['apple', 'apple', 'apple', 'apple', 'apple', 'pear', 'pear', 'pear', 'pear']
这是怎么回事? append 不是解决这个问题的正确方法吗?
最佳答案
这两行:
for kw in kw_1:
kw_list_1.append(kw_1)
您正在遍历 kw_1
,它是一个字符串,因此您的循环体会针对字符串中的每个字符执行一次。循环体将整个字符串 append 到列表中。因此,如果您输入 "apple"
,您会将 "apple"
添加到列表中五次。 “pear”
将被追加四次。
关于python - 在 Python 中使用 .append 时,项目会被追加多次。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10575139/