gpt4 book ai didi

python从文件中删除行

转载 作者:行者123 更新时间:2023-11-28 22:47:18 26 4
gpt4 key购买 nike

问题:

我正在尝试从我的 .txt 文件中删除空行。因为我的 .txt 文件是由 Python 通过 HTML 下载生成的,我想将它们保存在某个位置,所以我必须使用 Os.path.join。

这是在删除所有 TAGS 并仅保留标签内部后将 HTML 保存在该位置的代码:

cntent = re.sub('<[^>]+>',"\n", str(cntent))
with open(os.path.join('/Users/Brian/Documents/test',titles), "wb") as file:
file.writelines(str(cntent))

我怎样才能做到这一点?

文件的结果:

Productspecificaties




Uiterlijke kenmerken















Gewicht










185 g

我尝试了什么:

filtered = filter(lambda x: not re.match(r'^\s*$', x), original)

期望的结果

 Productspecificaties
Uiterlijke Kenmerken
Gewicht
185Gr

请注意,在代码的第一行 re.sub... 我使用了“\n”,否则根本就没有空格。

最佳答案

你不需要使用正则表达式:

cntent = re.sub('<[^>]+>',"\n", str(cntent))
with open(os.path.join('/Users/Brian/Documents/test', titles), "wb") as f:
f.writelines(line for line in cntent.splitlines(True) if line.strip())

str.strip()去除字符串开头和结尾的空格(包括换行符)。对于仅由空格组成的行,它将返回空字符串;被评估为假值。

str.splitlines with True 用于拆分行,但不排除新行。

关于python从文件中删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26451667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com