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

Python 用另一个列表扩展列表。为什么会有这种行为?,python,list,extend,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

我有一个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())
为什么会这样?
谢谢

首先,使用关键字作为变量是不好的做法。第二,它不能使用扩展函数,因为它是一个dictionary对象

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

>>>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']

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

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

你在哪里看到过
list[…]
,为什么你觉得这比上面一行使用的
list(…)
语法更正确?谢谢。这是一个输入错误,列表['AB']的语法不正确<代码>列表(['AB'])您用更不正确的内容修复了“拼写错误”。拼写错误已更正。我看到的是列表将一个字符串放入()中,并给出一个列表,其中的元素是字符串的字符@cph:在list(['AB'])中,您要传递给list一个列表,因为['AB']是一个包含一个元素的列表。列表(['AB'])给出的是['AB'],而不是'A','B'。Gaurav,这只是一个例子。我是个新手,没关系。如果我的语气听起来很刺耳,我很抱歉。我只是简单地解释一下。不管怎样,一阵风吹过了这个问题,所有人的投票率都很低。然而,最后一个问题还没有解决。啊,当堆栈溢出时,总是会发生这种情况,您想提取字符串的字母表,对吗?
split
没有参数已经在空格上拆分;这并没有增加任何东西。