小编Ans*_* T.的帖子

python中将列表和元组串联的行为不一致

当尝试连接列表和元组时,我注意到了一个令人惊讶的行为。

通常,它们不混合使用:

(0, 1) + [2, 3]
Run Code Online (Sandbox Code Playgroud)

结果是:

TypeError:只能将元组(不是“列表”)连接到元组

反之亦然

[0, 1] + (2, 3)
Run Code Online (Sandbox Code Playgroud)

给出:

TypeError:只能将列表(而不是“元组”)连接到列表

到目前为止,没有什么是意外的。但是,如果通过“ + =”使用变量分配,则列表的行为会改变!

l = [0, 1]
l += (2, 3)
l
Run Code Online (Sandbox Code Playgroud)

[0,1,2,3]

但是不适合元组:

t = (0, 1)
t += [2, 3]
t
Run Code Online (Sandbox Code Playgroud)

仍然产生错误:

TypeError:只能将元组(不是“列表”)连接到元组

当然,这里没有实际问题,但我很好奇:那里发生了什么?

python tuples list concatenation

5
推荐指数
1
解决办法
74
查看次数

标签 统计

concatenation ×1

list ×1

python ×1

tuples ×1