【发布时间】:2021-03-17 10:12:15
【问题描述】:
我根据我在网上找到的代码自己尝试了一些代码,但似乎没有一个有效。
文本文件包含如下内容:
Student ID: 1230345
Course code:FHCT1024
Grade: A
GPA: 4.0000
CGPA :4.0000
我想删除其中包含字符串'CGPA' 的行。我尝试使用:
with open("file.txt", 'r') as inp, open("file.txt", 'w') as f:
for line in inp:
if line.strip().startswith("CGPA"):
pass
else:
f.write(line)
但这删除了一切。
【问题讨论】:
-
以
'w'模式打开文件会破坏现有内容。 -
您不能同时(轻松地)读取和写入文件。要么将结果写入临时文件并在删除原始文件后重命名,要么将结果存储在内存中并在之后重写原始文件。
标签: python