我在CSV文件中有一组数据,基本上需要重新排序,并将重新排序的数据写入新的CSV文件。
Communit,Equtions,8000,707757,2024.96,0,99
Annlins,EXSES,5063,536835,71.26,0,99
K ad,EXPSES,3028,40360,37.31,0,99
Harr White,EXSES,1644,10634264,85.55,0,99
Emge,Equutions,89250,68895,93.53,0,99
HMC,120PE249,83210,12039,1651.86,0,99
用逗号分隔的7列数据。为了使它更容易阅读,我将重点放在第一行。
因此,它以-Communit,Equtions,8000,707757,2024.96,0,99
开头,需要以-Communit,8000,707757,2024.96,Equtions,99
结尾
我目前的代码可以将其打印到屏幕上,但我很难将其写入文件
import csv
with open('C:\\Impexp\\Input\\02B-210722.csv') as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
print(",".join([row[0], row[2], row[3], row[4], row[1], row[6]]))
我确实尝试过将sys.stdout
更改为文件,但那不起作用。
我对我的编码有点生疏,因为我主要使用SQL和电子表格是我的主要关注点,这是我第一次涉足Python。
任何帮助感谢,已尝试寻找其他职位,试图拼凑一个解决方案,适合我的问题,但到目前为止没有喜悦。
2条答案
按热度按时间6ojccjat1#
您可以使用
csv.writer()
将修补数据写入另一个CSV:如果你想修改现有的文件而不创建新的 (我不建议你这样做没有备份) 你可以打开文件在
r+
模式,读取所有行到列表和重写相同的文件:zfycwa2u2#
您可以使用Pandas来重新排列列:
data.csv
新数据.csv
或者,使用csv模块:
data.csv
新数据.csv