yml
typeError:'int'对象不可迭代
但是
a=(3)
b=list(a)
运行没有错误。
请解释一下。
答案 0 :(得分:6)
那是因为List
只是(3)
。 3
由逗号定义,而不是括号。如果您希望tuple
包含一个元素,请添加逗号:tuple
。
答案 1 :(得分:1)
(3)
是括号中的数字3
,(3,)
是元组:
>>> a = (3)
>>> type(a)
<type 'int'>
>>> a = (3,)
>>> type(a)
<type 'tuple'>
[3]
没有歧义,所以它是一个列表:
>>> a = [3]
>>> type(a)
<type 'list'>
list
构造函数接受tuple
或list
但不接受int
。
答案 2 :(得分:1)
使用逗号
定义元组键入((3,))类型'tuple'
键入(3)'int'类型