我正在尝试拆分我在Python中创建的List,然后创建一个单独列的csv文件,每个变量都有自己的列。列表的变量由描述符“|”分隔。此列表看起来像:1234 | 11/20/2017 | 4。因此,当我创建List的csv时,它只生成List的一列,所以我现在需要拆分List并使用3个不同的列创建另一个csv。谢谢!
答案 0 :(得分:0)
使用内置的csv模块:
import sys
import csv
in_path = '/YOUR/ORIGINAL/FILE/PATH.csv'
out_path = '/THE/CORRECTED/FILE/HERE.csv'
with open(in_path, 'r', newline = '') as csv_in_file:
with open(out_path, 'w', newline ='') as csv_out_file:
reader = csv.reader(csv_in_file, delimiter='|')
writer = csv.writer(csv_out_file, delimiter=',')
for row in reader:
print(row)
writer.writerow(row)
此处的分隔符更改为' |'到','对于逗号分隔值文件。 (信用克林顿W.布朗利。用Python进行分析基础的作者)
print命令只是用于获取屏幕上的输出以进行检查,并且要导入sys模块,因此您希望将其自动化并输入不同的csv文件。 in_path变量将是: in_path = sys.argv [1] out_path = sys.argv [2]
并且命令行的执行将是:
python the_script.py /original/file/path.csv corrected/file/path.csv
sys argv方法首先从命令行[1]读取文件路径(在python脚本之后),[2]读取第二个文件路径。