订购文件

时间:2017-10-12 00:46:10

标签: python python-2.7 file csv

我有这段代码

archivo=open("archivo.csv","r")
for i in range(10):
    for reg in archivo:
        if archivo[reg] < archivo[reg+1]:
            x = archivo[reg]
            archivo[reg] = archivo[reg+1]
            archivo[reg+1] = x
archivo.close()
archivo = open("archivo.csv","w")
archivo.write(reg)

我想要的是按字母顺序排序文件并保存订购,但我有几个错误。主要的一个说文件没有属性getitem,在网上我找不到任何相同的东西。有人能帮助我吗?

输入看起来像

Matt | 7 | 8 
John | 9 | 6 
Jim | 6 | 7

1 个答案:

答案 0 :(得分:1)

我已将源CSV文件修改为逗号分隔。所以archivo.csv看起来像

Matt,7,8
John,9,6
Jim,6,7

现在要阅读这个文件,python已经有了一个名为csv的标准模块。使用它我们可以可靠地读写csv。

from  csv import reader, writer
archivo=reader(open("archivo.csv","r"))
a = sorted(archivo)
archivo1 = writer(open("archivo1.csv", "w"))
for row in a:
    archivo1.writerow(row)