如何从一个 .txt 文件中提取一堆行并将它们添加到另一个文件中?
How do I extract a bunch of lines from one .txt file and add them to another?
https://repl.it/join/zlkssoum-muhammadqadeer
file = open("Teacher Database.txt", "r")
lines = file.readlines()
for i in range(15, 28):
KM = open("Karen McAskill.txt", "a")
KM.write(lines[i])
KM.close()
我有一个主数据库文件,但我想从该主文件中获取信息并将其添加到 5 个单独的较小文件中。我试过使用 for 循环,但每次我 运行 程序时,信息都会复制到较小的文件中。我想获取信息并将其写入较小的文件一次。
从原始文件中读取所有行后,您可以在写入模式下再次打开它,然后将要保留的行写入其中,并将其余行写入另一个文件。
file = open("Teacher Database.txt", "r")
lines = file.readlines()
file = open("Teacher Database.txt", "w")
KM = open("Karen McAskill.txt", "a")
for i in range(len(lines)):
if i >= 25 and i <= 28:
# the lines you want to move
KM.write(lines[i])
else:
# the lines you want to keep
file.write(lines[i)
KM.close()
file.close()
您可以添加更多分支逻辑以移动到其他文件。
您可以拆分文件数据,然后将数据写入文件,而不是使用行号。此代码将自动创建带有此人姓名的文件。
with open("Teacher Database.txt") as fp:
for person in fp.read().split('Name: '):
if person.strip():
file_name = person.split('\n', 1)[0] + '.txt'
with open(file_name, 'a') as fw:
fw.write('Name: ' + person)
https://repl.it/join/zlkssoum-muhammadqadeer
file = open("Teacher Database.txt", "r")
lines = file.readlines()
for i in range(15, 28):
KM = open("Karen McAskill.txt", "a")
KM.write(lines[i])
KM.close()
我有一个主数据库文件,但我想从该主文件中获取信息并将其添加到 5 个单独的较小文件中。我试过使用 for 循环,但每次我 运行 程序时,信息都会复制到较小的文件中。我想获取信息并将其写入较小的文件一次。
从原始文件中读取所有行后,您可以在写入模式下再次打开它,然后将要保留的行写入其中,并将其余行写入另一个文件。
file = open("Teacher Database.txt", "r")
lines = file.readlines()
file = open("Teacher Database.txt", "w")
KM = open("Karen McAskill.txt", "a")
for i in range(len(lines)):
if i >= 25 and i <= 28:
# the lines you want to move
KM.write(lines[i])
else:
# the lines you want to keep
file.write(lines[i)
KM.close()
file.close()
您可以添加更多分支逻辑以移动到其他文件。
您可以拆分文件数据,然后将数据写入文件,而不是使用行号。此代码将自动创建带有此人姓名的文件。
with open("Teacher Database.txt") as fp:
for person in fp.read().split('Name: '):
if person.strip():
file_name = person.split('\n', 1)[0] + '.txt'
with open(file_name, 'a') as fw:
fw.write('Name: ' + person)