我有一份清单:
[Header, 132, mail@wurst, [adasdsd, 1, 3, 4], [sdsdsd, 12, 3, 4], [sdsds, 3, 3]]并希望将其保存为csv文件,并在通过ftp作为相同列表传输后导入它。我要:
[Header, 132, mail@wurst, [adasdsd, 1, 3, 4], [sdsdsd, 12, 3, 4], [sdsds, 3, 3]]但是在导入列表之后,我无法找到一种具有相同列表结构的方法。无论我使用何种堆栈溢出解决方案,导入后总是会更改列表的结构。
没有解决办法,包括:
只使用以下两种解决方案:
没有导入的
发布于 2021-04-06 16:41:09
如果您知道标题长度(本例中为3),则可以对其进行硬编码。否则,你将不得不做一些非常俗气的事情,或处理标题,就像其他每一个记录。
from __future__ import print_function
import csv
listing = [
'Header', 132, 'mail@wurst',
['adasdsd', 1, 3, 4],
['sdsdsd', 12, 3, 4],
['sdsds', 3, 3]
]
with open('listing.csv', 'w') as outfile:
csvout = csv.writer(outfile)
csvout.writerow(listing[:3])
csvout.writerows(listing[3:])
with open('listing.csv') as infile:
csvin = csv.reader(infile)
header = next(csvin)
listing = [row for row in csvin]
print(header + listing)后来又加上..。当然,如果CSV文件已经存在,则不需要执行硬编码。首先读取该文件,您已经将头与其余部分分开。
https://stackoverflow.com/questions/66968361
复制相似问题