1
我对脚本很陌生。目前我正在开发一个脚本来读取来自不同文件的数据,然后合并,分类和提取特定数据。在python中排序csv文件需要帮助
现在我被困在使用我的数据的第4列对csv文件进行排序。下面是我使用
*
ifile = open('one.csv', 'r')
reader = csv.reader(ifile, delimiter=',')
sortedlist = sorted(reader, key=operator.itemgetter(3))
with open("Newfile.csv", "wb") as f:
fileWriter = csv.writer(f, delimiter=',')
for row in sortedlist:
fileWriter.writerow(row)
的代码时,我排序与第一列.....“operator.itemgetter(0)”的CSV上面的代码正在工作。
但是当我把(3)或任何其他比0 .....这是给错误如下
IndexError:列表索引超出范围
我的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
我无法理解的issue..I试图用不同的delimiters..but没有运气
你已经张贴足够的数据来重现你的错误,很可能你的CSV的之一相同的格式或者格式不正确或不作为,你需要做更多的调试,其余 – EdChum
你确定了'csv'的分隔符是','和多个列? – luoluo
对于示例数据,我假设您已转储的csv数据中有新行。现在对于给定的数据,排序工作正常。但是,如果csv不正确(例如,只有2列而不是5),则问题是可重现的。 –