e = ('ham', 5, 1, 'bird')
logfile.write(','.join(e))
我必须加入它才能将其写入文本文件。
答案 0 :(得分:110)
join
只接受字符串列表,因此请先转换它们
>>> e = ('ham', 5, 1, 'bird')
>>> ','.join(map(str,e))
'ham,5,1,bird'
或者更多pythonic
>>> ','.join(str(i) for i in e)
'ham,5,1,bird'
答案 1 :(得分:11)
join()
仅适用于字符串,不适用于整数。使用','.join(str(i) for i in e)
。
答案 2 :(得分:4)
使用csv
模块。它将保存关于如何处理包含逗号的项目的后续问题,然后是另一个关于处理包含您用于引用/转义逗号的字符的项目的问题。
import csv
e = ('ham', 5, 1, 'bird')
with open('out.csv', 'wb') as f:
csv.writer(f).writerow(e)
检查:
print open('out.csv').read()
输出:
ham,5,1,bird
答案 3 :(得分:4)
您最好先将元组转换为列表:
e = ('ham', 5, 1, 'bird')
liste = list(e)
','.join(liste)