使用Python检查/写入.txt文件的行

时间:2013-01-14 09:01:17

标签: python-3.x

我对这个网站和python都很新,所以对我很轻松。使用Python 3.3

我正在制作一个刽子手式的游戏,所有这些都是一个方面。我想检查字符串是否在.txt文件中,如果不是,则将其写入.txt文件末尾的新行。目前,我可以在新行上写入文本文件,但如果该字符串已经存在,它仍然写入文本文件,我的代码如下:

请注意,我的文本文件的每个字符串都在单独的行

write = 1
if over == 1:
    print("I Win")
    wordlibrary = file('allwords.txt')
    for line in wordlibrary:
        if trial in line:
            write = 0
    if write == 1:
        with open("allwords.txt", "a") as text_file:
            text_file.write("\n")
            text_file.write(trial)

2 个答案:

答案 0 :(得分:0)

这真的是你程序的缩进吗?

如上所述,在wordlibrary上的循环的第一次迭代中, 将该试验与该行进行比较,并且由于(根据您的症状)它不包含在第一行中,程序将继续进入循环的下一部分:因为write == 1,它将试用版附加到text_file。

欢呼声,  暗嫩

答案 1 :(得分:0)

您不需要事先知道文件中存在的行数。只需使用文件迭代器。您可以在此处找到文档:http://docs.python.org/2/library/stdtypes.html#bltin-file-objects

特别注意readlines方法。