列表输入和创建的列表不同

时间:2019-06-14 12:26:34

标签: python python-3.x list input

当我以

创建列表时
a=[5,6,8,7]; print(a)

它将输出显示为

[5, 6, 8, 7]

,当输入为

b=list(input());print(b) 

它将输出显示为

['5', '6', '7', '8']

为什么和那有什么区别。我可以将5和6添加为11,但是第二次添加5和6是56吗?

2 个答案:

答案 0 :(得分:1)

这是因为input()返回一个字符串,而+正在进行字符串连接。来自input() documentation

  

然后函数从输入中读取一行,并将其转换为字符串   (剥离尾随的换行符),然后返回。

答案 1 :(得分:0)

input()返回一个 string list(input())提取其各个字符并将它们放在列表中。添加单个字符(一个字符的字符串)会产生一个新字符串:

'5' + '6' == '56'
5 + 6 == 11

要将字符串列表转换为整数列表,请使用map

integers = list(map(int, input()))