我在将文件保存到文件时遇到了一些问题,我尝试过的两种方法都产生了不需要的输出。
我尝试的第一种方式是:
savefile.write(str(full_list))
返回:
[u'Smith', u'Malte Low', u'Day', u'George']
我试过的另一种方式是:
for fitem in full_list:
file.write(str(fitem))
返回:
SmithMalte LowDayGeorge
我理想地寻找它回归:
Smith, Malte, Low, Day, George
我不太确定如何使用.join
来完成这项工作,但这似乎是最好的选择,我可能错了。
任何人都有任何想法我应该如何解决这个问题,我将不胜感激。
提前致谢 - Hy
答案 0 :(得分:2)
你可以使用。
", ".join(full_list)
然后将结果写入文件。
请参阅代码段 -
>>> full_list = [u'Smith', u'Malte Low', u'Day', u'George']
>>> print ", ".join(full_list)
Smith, Malte Low, Day, George
编辑 - 看到你想要Malte Low
之间的逗号,那么,你可以做到
>>> from itertools import chain
>>> ", ".join(chain.from_iterable(map(str.split, full_list)))
u'Smith, Malte, Low, Day, George'
答案 1 :(得分:1)
给出清单
[u'Smith', u'Malte Low', u'Day', u'George']
您可以尝试
savefile.write(','.join(full_list))
但那只会返回
Smith,Malte Low,Day,George
这可能不是你想要的输出,用','分隔单词而不是项目
所以你可能想做
但是你必须多次迭代。要在单次迭代中执行操作,可以使用itertools.chain.from_iterable
from itertools import chain
savefile.write(','.join(itertools.chain.from_iterable(e.split()
for e in full_list)))