如何在python csv文件中排序(然后删除重复项)?

时间:2019-12-19 03:08:17

标签: python csv

我认为在对此主题尝试了数十个代码块之后,我的错误应该在其他地方。缩进对我来说似乎正确。代码的逻辑也。您能看到任何可以解决该问题的东西吗?

我想我应该首先对文件进行排序,然后才删除重复项,稍后将添加该代码,因为排序似乎是我要执行的操作的基础。

感谢您的输入。

Gemfile

===更新======

我设法进行排序但没有到正确的位置。它仅在标准输出上打印。我只想保存list-history.csv,但不起作用。我虽然使用了# SECTION 2.A: save current search to second csv file (permanently as a backup saving_current_search = input("Would you like to save your search? Type [y]/[n]: ") if saving_current_search == 'y': # copy file1 to file2 with open('list.csv', 'r') as reader, open('list-history.csv', 'a') as writer: for row in reader: writer.write(row) # sort permanent backup with open('list.csv', newline='') as csvfile: csv1 = csv.reader(csvfile, delimiter=',') sort = sorted(csv1,key=operator.itemgetter(1)) for eachline in sort: print(eachline)

writer.writerow(row)

===最后更新=======

我知道为什么会有这个问题。我有一个设计问题。在显示的代码中,您看不到它。但是我有一个文件('list-history.csv')打开了两次。第一次打开该文件时,我会使用附加选项'a'将所需的所有文本插入该文件中。第二次,我打开相同的文件对其进行排序,然后使用写选项“ w”。我正在调查这个问题。

问题在下次使用该脚本时出现:先前使用的写'w'已覆盖该文件。我认为这是我当前问题的解释。

0 个答案:

没有答案