import os
word_to_replace, replacement_word = "", ""
if (os.path.isfile('data_association/names.txt')):
word_file_path = 'data_association/names.txt'
else:
open('data_association/names.txt', "w")
word_file_path = 'data_association/names.txt'
word = "Claudio"
with open(word_file_path) as f:
lineas = [linea.strip() for linea in f.readlines()]
numero = None
if word in lineas: numero = lineas.index(word)+1
if numero != None:
#Here you must remove the line with the name of that file
else: print(That person's name could not be found within the file, so no line has been removed)
我需要尝试从下面的.txt文件中删除该名称(假设该文件中有一行具有该名称,如果该文件没有该行,则应打印该名称尚未找到且无法删除)
Lucy
Samuel
María del Pilar
Claudia
Claudio
Katherine
Maríne
删除示例名称为"Claudio"
的行后,文件将如下所示:
Lucy
Samuel
María del Pilar
Claudia
Katherine
Maríne
PS:这个名字列表是实际列表的一个缩减片段,所以最好不要重写整个文件,而只是编辑找到那个名字的特定行
1条答案
按热度按时间q7solyqu1#
中包含给定字符串的文本文件中删除特定行的一种方法
巨蟒
此代码首先检查指定的文件是否存在,如果文件存在,则以读模式打开文件,将所有行读入一个列表,然后以写模式打开文件。然后循环访问行列表,将除包含指定字符串的行之外的每一行写入文件(在本例中为“Claudio”)。如果在行中找到指定的字符串,它将打印一条消息,指出包含该字符串的行已被删除。如果文件不存在,它将打印一条消息“找不到文件”。
请注意,此方法将删除所有包含该单词的行。