如何使用 python 将引号和制表符添加到 csv 文件中的每个元素?
例如,我想制作这个 csv 样本:
TitleA,TitleB,TitleC,TitleD,TitleE,....
Data1,Data2,<null>,Data4,<null>,....
DataX,<null>,<null>,DataY,<null>,....
看起来像这样:
"TitleA" "TitleB" "TitleC" "TitleD" "TitleE" ....
"Data1" "Data2" "<null>" "Data4" "<null>" ....
"DataX" "<null>" "<null>" "DataY" "<null>" ....
我本质上是将 csv 文件转换为制表符分隔的文件,其中所有元素都用单引号引起来...
有没有快速的方法来做到这一点?
任何帮助表示赞赏!
您正在做的是将一种 CSV 方言转换为另一种方言,对吧?
因此,您可以通过定义两种 CSV 方言,并为其中一种方言创建读取器,为另一种方言创建写入器来实现此目的。
幸运的是,这些方言都足够简单(输入甚至是默认的),您不需要做任何花哨的事情:
with open('in.csv', 'r') as infile, open('out.csv', 'w') as outfile:
reader = csv.reader(infile)
writer = csv.writer(outfile, delimiter='\t', quoting=csv.QUOTE_ALL)
writer.writerows(reader)
在非常旧的 Python 版本中,您可能必须将最后一行替换为两行:
for line in reader:
writer.writerow(line)
See 方言和格式参数 http://docs.python.org/library/csv.html#csv-fmt-params了解更多详情。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)