需要帮助在python中排序csv文件吗

需要帮助在python中排序csv文件吗,python,sorting,csv,Python,Sorting,Csv,我对脚本非常陌生。目前我正在编写一个脚本,从不同的文件中读取数据,然后合并、排序和提取特定的数据 现在,我被困在排序csv文件使用第四列我的数据。下面是我正在使用的代码 * 当我使用第一列对csv排序时,上面的代码正在工作…“operator.itemgetter(0)” 但当我输入(3)或除0以外的任何值时……它给出的错误如下 索引器:列表索引超出范围 我的csv文件看起来像 IP_range,Mask,Ad1,Ad2,Ad3 10.0.140.0, 255.255.0.0, 199u, Se

我对脚本非常陌生。目前我正在编写一个脚本,从不同的文件中读取数据,然后合并、排序和提取特定的数据

现在,我被困在排序csv文件使用第四列我的数据。下面是我正在使用的代码

*

当我使用第一列对csv排序时,上面的代码正在工作…“operator.itemgetter(0)”

但当我输入(3)或除0以外的任何值时……它给出的错误如下

索引器:列表索引超出范围

我的csv文件看起来像

IP_range,Mask,Ad1,Ad2,Ad3
10.0.140.0, 255.255.0.0, 199u, Seattle, Fourth Avenue
10.0.140.1, 255.255.0.0, 193u, Windsor, Popular Avenue
我无法理解此问题。我尝试使用不同的分隔符。但是运气不好。

尝试使用
列表删除格式错误的行

同时,在读取文件时使用
with
语句

import csv
import operator
with open('one.csv', 'r') as ifile:
    ireader = [i for i in csv.reader(ifile, delimiter=',') if len(i) >3]  #covert works here
    sortedlist = sorted(ireader, key=operator.itemgetter(3))
    with open("Newfile.csv", "wb") as f:
         fileWriter = csv.writer(f, delimiter=',')
         for row in sortedlist:
             fileWriter.writerow(row)
尝试使用
列表删除格式错误的行

同时,在读取文件时使用
with
语句

import csv
import operator
with open('one.csv', 'r') as ifile:
    ireader = [i for i in csv.reader(ifile, delimiter=',') if len(i) >3]  #covert works here
    sortedlist = sorted(ireader, key=operator.itemgetter(3))
    with open("Newfile.csv", "wb") as f:
         fileWriter = csv.writer(f, delimiter=',')
         for row in sortedlist:
             fileWriter.writerow(row)

您发布的数据不足,无法再现错误,您的csv中可能有一个格式不正确或与其他csv格式不相同,您需要进行更多调试是否确定
csv
的分隔符是
和多个列?对于示例数据,我假设您转储的csv数据中有新行。现在对于给定的数据,排序工作正常。但是如果csv不正确(例如只有2列而不是5列),问题是可复制的。为什么OP使用Rakesh帐户时我会收到Barun Sharma的消息?您是否使用多个帐户?感谢您的回复……在我删除了许多行并重新运行脚本后,它工作正常……因为您建议csv文件中存在错误……实际上它是txt文件和htm文件的合并文件……我试图从这两个文件中收集信息,并将它们放在相同的列名下……我的排序问题现在已解决…看起来我应该重新合并文件。谢谢EdChum和Barun SharmaYou发布的数据不足,无法再现错误,很可能您的一个csv的格式不正确,或者与其他csv的格式不相同,您需要进行更多调试是否确定
csv
的分隔符为
和多个列?对于示例数据,我假设您转储的csv数据中有新行。现在对于给定的数据,排序工作正常。但是如果csv不正确(例如只有2列而不是5列),问题是可复制的。为什么OP使用Rakesh帐户时我会收到Barun Sharma的消息?您是否使用多个帐户?感谢您的回复……在我删除了许多行并重新运行脚本后,它工作正常……因为您建议csv文件中存在错误……实际上它是txt文件和htm文件的合并文件……我试图从这两个文件中收集信息,并将它们放在相同的列名下……我的排序问题现在已解决…看起来我应该重新合并文件。谢谢EdChum和Barun Sharma