Python删除一个,用户选择,从文件行

时间:2014-02-28 16:42:53

标签: python if-statement file-io io

我有一个以下格式的文本文件:

A*
B#
C'

我的程序目前允许用户添加到文件中,但不能删除。我有以下功能,但似乎无法正常工作。

delete = input('Enter clue to delete: ')
with open(CLUEFILE,'r')as f:
    lines = f.readlines()
with open(CLUEFILE,'w') as f:
    for line in lines:
        if line != delete or line != delete+'\n':
            f.write(line)

代码不会产生任何错误,但不会对文件进行任何更改!我无法理解if语句是如何工作的!任何帮助,如果非常感谢!

1 个答案:

答案 0 :(得分:1)

if声明的逻辑略有偏差。您想要编写非 deletedelete + '\n'的行,因此您需要使用and代替or

if line != delete and line != delete+'\n':

更简单,你可以做到

if line.rstrip() != delete: