小编Bor*_*rja的帖子

在Python中从文件中删除一行

我正在尝试删除包含特定字符串的特定行.

我有一个名为numbers.txt的文件,其中包含以下内容:

peter
tom
tom1
yan

我要删除的是文件中的tom,所以我做了这个函数:

def deleteLine():
fn = 'numbers.txt'
f = open(fn)
output = []
for line in f:
    if not "tom" in line:
        output.append(line)
f.close()
f = open(fn, 'w')
f.writelines(output)
f.close()
Run Code Online (Sandbox Code Playgroud)

输出是:

彼得

正如你所看到的,问题是函数删除tomtom1,但我不想删除tom1.我想删除汤姆.这是我想要的输出:

peter
tom1
yan

有任何改变功能的想法是为了正确吗?

python string file line

10
推荐指数
1
解决办法
4万
查看次数

标签 统计

file ×1

line ×1

python ×1

string ×1