Skip to main content
 首页 » 编程设计

python之删除文件第一行的前 32 个字符

2025年05月04日22mq0036

我有一个长文本文件,它总是以 32 个字符的 MD5 散列开头,如下所示:

f4f494da100a3577420a7ff7c32abb5707:55:40 下午 |用户名:文本

我的目标是去除该文件第一行的前 32 个字符,然后覆盖该行。我的代码(如下)成功地抓取了行并删除了字符,但删除了文件中的所有其他内容。

with open(x, 'r') as fin: 
    lines = fin.readlines() 
    lines = lines[0] 
    lines = lines[32:] 
with open(x, 'w') as fout: 
    for line in lines: 
        fout.write(line) 

我知道我可以使用 lines[0] 编辑第一行,但我不确定如何以这种方式删除字符(也许 re?)

请您参考如下方法:

您可以只手动读取前 32 个字符,然后调用 readlines 读取其余字符:

with open(x, 'r') as fin: 
    header = fin.read(32) 
    lines = fin.readlines() 
with open(x, 'w') as fout: 
    fout.writelines(lines)