我正在尝试替换txt文件中的cetain元素。 可以说,如果我在phonelist.txt中找到姓名,我希望我使用输入的newNumber值将该号码更改为此人。 假设name = Jens,然后我希望它返回997.6612,这是tlf编号给Jens,然后输入“ newNumber”将替换此数字。我是python的新手。
AddProductToBag
答案 0 :(得分:0)
加载内容,对其进行修改,搜索到文件的开头,再次写入修改后的内容,然后截断其余部分。
def change_number():
name = input('Name: ') #Enter name
newNumber = input('New number: ') # Wanted new number
with open('telephonelist.txt', 'r+') as file:
data = file.read().splitlines()
data = [line if not line.split()[0] == name else f"{name} {newNumber}" for line in data]
file.seek(0)
file.write("\n".join(data))
file.truncate()
change_number()