如何在tkinter python中从csv文件中删除选定的列表行?

如何在tkinter python中从csv文件中删除选定的列表行?,python,csv,tkinter,selection,delete-row,Python,Csv,Tkinter,Selection,Delete Row,我正在尝试从基于Tkinter的GUI中的选定列表中删除选定的行。我不知道如何删除一个特定的选定行,当我单击“删除”按钮时,该行将从CSV文件中永久删除(不创建或创建备份CSV文件)。为此,我必须写一个函数,但我不知道该怎么做 选择行并显示在列表中的我的代码 def show_definition(self, event): def_list.delete(0, 'end') widget = event.widget selection = widget.curse

我正在尝试从基于Tkinter的GUI中的选定列表中删除选定的行。我不知道如何删除一个特定的选定行,当我单击“删除”按钮时,该行将从CSV文件中永久删除(不创建或创建备份CSV文件)。为此,我必须写一个函数,但我不知道该怎么做

选择行并显示在列表中的我的代码

def show_definition(self, event):
    def_list.delete(0, 'end')
    widget = event.widget
    selection = widget.curselection()
    with open('GRE_Word_List.csv') as csvFile:
        reader = csv.DictReader(csvFile, delimiter=',', quotechar=',', quoting=csv.QUOTE_MINIMAL)
        word = []
        meaning = []
        for dictionary in reader:
            word.append(list(dictionary.values())[0])
            meaning.append(list(dictionary.values())[1])
        word.reverse()
        meaning.reverse()

        def_list.insert(0, meaning[selection[0]])
        # print(word[selection[0]])

def delete_word(self):
    x = []
    selection = all_list.curselection()
    print(selection[0])
    with open('GRE_Word_List.csv') as CSVtoDel:
        reader = csv.DictReader(CSVtoDel)
        for dictionary in reader:
            x.insert(0, list(dictionary.values())[0])
    print(x[selection[0]])

.csv
是一个文本文件。虽然理论上可以从文本文件中删除一行,但这很困难,而且容易出错。最简单、最快捷的方法是读取文件,删除不需要的行,然后写出一个新的行。我理解您不想麻烦删除文件的旧副本并重命名新副本。查看模块
中的
以了解处理该问题的好方法:。好的,我会尝试一下,如果它可以解决我的问题并使我的代码更简单,那就太好了。多谢各位@船形