为什么我不能在列表中插入值?

时间:2019-10-02 08:19:18

标签: python python-3.x list

我的Python 3.7程序部分存在问题。

这是一个程序,您可以在其中将任何语言的词汇及其翻译添加到.txt文件中,并且该程序可以问您一个单词,然后输入翻译内容-这样就可以了。

接收此数据也很好。但我也想将您在程序中输入的两种语言保存到此.txt文件中。

我可以将这两个添加到.txt文件的第一行,如果我尝试打印此文件的第一行,它也可以工作,但是我需要拆分文本文件的两个值,因为它们是写的在文本文件(fe)中是这样的: German - English

最后,我想将这两个拆分值添加到新列表中。但是,如果我尝试打印列表的第一个值,则会出现以下错误:

  

IndexError:列表索引超出范围

如果我检查列表是否为空,我可以看到它为空,但是为什么呢?

感谢您的帮助

这是我的代码,它负责此错误:

new_currSprache = []

with open(name + ".txt", "r") as file:
    lines = file.readlines()
    for lines[0] in file.readlines():
        lang_1, lang_2 = lines[0].split(" - ")
        print(lang_1)
        print(lang_2)
        new_currLanguage.append(lang_1, lang_2)
    firstLanguage = new_currLanguage[0]
    secondLanguage = new_currLanguage[1]

1 个答案:

答案 0 :(得分:0)

您不需要遍历所有行,并且split已经返回了列表

with open(name + ".txt", "r") as file:
    lines = file.readlines()
    new_currLanguage  = lines[0].split(" - ")
    firstLanguage = new_currLanguage[0]
    secondLanguage = new_currLanguage[1]