如何阅读包含以下内容的.csv文件
$C=2$A=3$B=1$
然后创建一个包含相同内容的新.csv文件,但$
已更改为,
并按字母顺序排序,如下所示:
A=3,B=1,C=2
谢谢!
编辑:
这是我的以下代码。它最终在输出的开头给出了一个额外的逗号。
input = csv.reader(open('inputfile.csv','r'), delimiter='$')
output = open('outputfile.csv','w')
try:
writer = csv.writer(output)
for column in input:
writer.writerow(sorted(column))
print (sorted(column))
finally:
out.close()
现在我的输入是:
$ C = 2 $ A = 3 $ B = 1 $
我的输出是:
,A = 3,B = 1,C = 2
我希望它是:
A = 3,B = 1,C = 2
谢谢!
答案 0 :(得分:2)
with open('test.csv') as in_file, open('new.csv', 'w') as out_file:
for line in csv.reader(in_file, delimiter='$'):
out_file.write(','.join(sorted(line)[2:])+'\n')
基本上它的作用是:
in_file
out_file
$
作为分隔符,使用in_file
初始化CSV阅读器作为输入文件,
作为分隔符重新组合这些元素\n
编辑:修复了开始/结束$
符号,方法是删除从CSV中解析出来的空元素([2:]
位)
答案 1 :(得分:0)
您可以使用csv.reader
读取文件,并将分隔符设置为'$'
。然后对于返回的每一行,去除空元素并对其余元素进行排序:
row = sorted([item for item in row if item])