当前位置: 首页 > 面试题库 >

在Python中从文件中删除一行

邢星波
2023-03-14
问题内容

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

我有一个名为 numbers.txt 的文件,其内容如下:

Peter·
Tom
TOM1
Inflammation


我要删除的是文件中的那个 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()

输出为:

彼得·

如您所见,问题在于该函数删除了 tomtom1 ,但是我不想删除 tom1 。我只想删除 tom 。这是我想要的输出:

彼得
TOM1

有什么想法可以更改功能以使其正确执行吗?


问题答案:

换行:

    if not "tom" in line:

至:

    if "tom" != line.strip():


 类似资料:
  • 问题内容: 我有一个大文件,只需要删除几行,是否有任何方法可以打开新文件并复制整个文本? 编辑:主要问题是,当它在多个txt filse中运行时,该程序失败 问题答案: 有什么方法可以做到而无需打开新文件并复制整个文本? 不,没有。当然,如果您想 安全地 做的话就没有。 而且也不会真正帮助您。它可以让您用相等数量的字节替换文件中的字节序列,但这并不意味着删除一行。 您可以这样使用RAF: 给定初始

  • 问题内容: 我有一个像这样的textfile.txt: 如何删除最舒适的前三行和最后一行? 问题答案:

  • 问题内容: 我有以下要在node.js中操作的文本文件(“ test.txt”): 我想删除第一行,以使其成为第一行。我怎样才能做到这一点? 问题答案:

  • 本文向大家介绍从PHP中的文件中删除最后一行,包括了从PHP中的文件中删除最后一行的使用技巧和注意事项,需要的朋友参考一下 从文件中删除最后一行是一个简单的过程,只需几行代码即可完成。 此脚本中方法的局限性在于,如果文件很大,则将整个文件传递到数组中将占用大量内存,从而有可能导致服务器崩溃。最好的方法不是执行此操作,而是从文件末尾开始直到找到第一个换行符为止。以下脚本将一次咬掉50个字符,直到找到

  • 问题内容: 有没有一种简单的方法可以从命令行在充满文本文档的文件夹中删除同一行文本? 问题答案: 如果您的sed版本允许该标志(就地编辑): 如果没有,只需将其放入bash循环中即可:

  • 问题内容: 我正在Linux系统上使用非常大的文本文件(〜11GB)。我正在通过正在检查文件错误的程序来运行它。一旦发现错误,我需要修复该行或完全删除该行。然后重复… 最终,一旦我对流程感到满意,我便将其完全自动化。但是,现在让我们假设我正在手动运行它。 从此大文件中删除特定行最快(就执行时间而言)是什么?我想到了用Python进行此操作…但是可以接受其他示例。该行可能在文件中的 任何位置 。 如