我正在尝试将嵌套列表中每N个项目写入多个.txt文件。棘手的部分是将每组N-元素写入文本文件。
我的清单:
list = ['item1a item1b item1c','item2a','item3a item3b','item4a item4b item4c','item5a','item6a item6b','item7a item7b item7c','item8a','item9a item9b']
我想要以下.txt文件输出:
text1.txt: item1a item1b item1c \n item2a \n item3a item3b
text2.txt: item4a item4b item4c \n item5a \n item6a item6b
text3.txt: item7a item7b item7c \n item8a \n item9a item9b
当前,每个嵌套列表都写入单个.txt文件。分组不是我所需要的。我好亲密!我认为这应该是个小问题。
例如:
text1.txt: item1a item1b item1c
text2.txt: item2a
text3.txt: item3a item3b
我的代码
list = ['item1a item1b item1c','item2a','item3a item3b','item4a item4b item4c',
'item5a','item6a item6b','item7a item7b item7c','item8a','item9a item9b']
for item, biglist in enumerate(list):
f=open(outdir_name + "text" + str(item+1)+".txt","w")
f.write(biglist + "\n".format(list))
f.close()
当前,每个嵌套列表都写入单个.txt文件。分组不是我所需要的。我好亲密!我认为这应该是个小问题。
例如:
text1.txt: item1a item1b item1c
text2.txt: item2a
text3.txt: item3a item3b
答案 0 :(得分:0)
这可以完成工作!
items_per_file = 3
your_list=['item1a item1b item1c','item2a','item3a item3b','item4a item4b item4c','item5a','item6a item6b','item7a item7b item7c','item8a','item9a item9b']
for item in range(0, len(your_list), items_per_file):
f=open(outdir_name + 'text' + str((item//items_per_file)+1)+".txt","w")
f.write("\n".join(your_list[x] for x in range(item, min(item+items_per_file, len(your_list) - 1))))
f.close()
说明:
for
循环的那一行中,我正在采取items_per_file
的步骤; f.open
行中,文件名是item // items_per_file
,因为如果没有// items_per_file
,您将得到text1, text4, text7, ...
; f.write line
中,我一次写了items_per_file
个项目; 更新:
items_per_file
的数量your_list
的八个项目(不可被items_per_file
划分)