用另一个扩展列表。为什么这种行为?

时间:2018-12-23 16:27:58

标签: python list extend

我有一个2个元素列表,我想与另一个元素列表一起扩展。 在Jupyter中玩耍时,我发现了我无法理解的奇怪行为。

# this is my first list
columnslist=['app','SUM']
['app','SUM']

# it is going to be extended with the values A and B

columnslist.extend(['A','B'])
['app','SUM','A','B']

# It is possible to make a list out of a string in this way
print(list('AB'))
['A','B']

# I realise that list('AB')= ['A','B']
This works:
columnslist.extend(list('AB'))

# but the following does not work:
mytext='this is a text to be split'
columnslist.extend(mytext.split())

为什么会这样? 谢谢

2 个答案:

答案 0 :(得分:-1)

首先,将关键字用作变量是不好的做法。第二件事,因为它是一个字典对象,所以不能使用扩展功能。

编辑: 我希望我猜对了,您想在带空格的字符串中提取字母吗?然后您可以尝试使用以下代码

>>>my_list= ["A","B"]
>>>test_str = "This is a text"
>>>my_list.extend(list("".join(test_str.split())))
['A','B','T', 'h', 'i', 's', 'i', 's', 'a', 't', 'e', 'x', 't']

答案 1 :(得分:-1)

文本由空格分隔,您可以在此处使用.split.split转换列表中的字符串。

columnslist.extend(mytext.split(' '))