不能连接' str'和'列出'对象列表包含整数

时间:2014-04-04 03:51:03

标签: python string list python-2.7

我希望我的输出为:

"fileselection":[0, 1, 2, 3, 4, 5, 6, 7]

我的代码:

li=[0, 1, 2, 3, 4, 5, 6, 7]
st='"fileselection":'
print st+",".join(li)

目前正在抱怨:

TypeError: sequence item 0: expected string, int found.

1 个答案:

答案 0 :(得分:4)

只需在列表中调用str()即可获得所需的输出:

>>> li = [0, 1, 2, 3, 4, 5, 6, 7]
>>> st = '"fileselection":'
>>> st + str(li)
'"fileselection":[0, 1, 2, 3, 4, 5, 6, 7]'

您看到的问题是因为li的元素是整数,因此要将它们连接到首先需要将它们转换为str的字符串。您可以通过str()

应用map()功能来实现此目的
>>> st + ','.join(map(str, li))
'"fileselection":0,1,2,3,4,5,6,7'