繁体   English   中英

如何从 python 中的文本文件中删除特定行

[英]How to delete specific lines from a text file in python

这是写在文本文件中的文本。 我想删除特定的行,例如从行号中删除。 2 到 4 并在 txt 文件中写入 rest。

QA 梯子靠墙放置,使其到达高度为 6 m 的墙壁顶部,并且梯子以 60 度角倾斜。 找出梯子离墙脚有多远。 Ans.3.464 m Ans.exp.:我们将使用三角函数轻松快速地解决问题。 其中 AB 代表墙的高度,BC 代表墙到梯子脚的距离,AC 代表梯子的长度。 在直角三角形ABC中,与角60度相对的边称为对边(AB),与90度相对的边称为斜边(AC),其余边称为邻边(BC)。 现在,我们需要找到梯子脚和墙壁之间的距离。 也就是说,我们必须找到 BC 的长度。

我在 python 中打开了文件并分配了如下行:

 with open('Maths.txt') as f:

        lines = f.read().split('\n')

我应该如何进一步进行?

为此,您最好使用 readlines() 。 因为 read() 方法将您的文本作为单个大字符串返回,所以您无法区分您的行。 使用 readlines() 方法,您将获得行列表

然后,您只需删除列表中不需要的行,然后使用 f.writelines() 将这些行发送到另一个文本文件。

也许你可以做这样的事情:

first_lines=f.read().split('\n')[:1]
last_lines=f.read().split('\n')[3:]

print(first_lines + last_lines)

不知道有没有办法直接做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM