我有3个名单:
AList = ['name','name2']
BList = ['desg1','desg2']
InList = [1,2]
我使用follo代码片段将其写入文本文件:
fo = open(filepath, "w")
for i in zip(AList,BList,InList):
lines=fo.writelines(','.join(i) + '\n')
但是我得到了以下错误:
TypeError: sequence item 2: expected string, int found
如何使用新行字符将值写入文本文件。
答案 0 :(得分:1)
join
期望字符串项,但你在InList中已经是int。因此,在使用join之前将它们转换为字符串,或者你可以这样做:
AList = ['name','name2']
BList = ['desg1','desg2']
InList = ['1','2']
fo = open("a.txt", "w")
for i in range(len(AList)):
dataToWrite = ",".join((AList[i], BList[i], str(InList[i]))) + '\n'
lines=fo.writelines(dataToWrite)
答案 1 :(得分:0)
php -i
期望一系列join
项作为第一个参数,但您的str
包含InList
个值。只需将它们转换为int
:
str
我建议您在处理文件时使用lines=fo.writelines(','.join(map(str, i)) + '\n')
块。您也可以在一个语句中写下所有行:
with