如何制作一个与另一个txt文件同名的文件,而不是覆盖文件,而是在python中的现有文件上添加一个数字?

How to make a file with the same name as another txt file,without overwriting the file but instead add a number to the existing one in python?

示例:

while True:
 file = open("example.txt", "w")
 strings = ["Hello","World"]
 file.writelines(string)

我希望每次迭代都创建一个名称为 example1.txt example2.txt 等的新文件

试试这个:

counter=1
while True:
   filename = "example" + str(counter) + ".txt"
   with open(filename, "w") as file:
       strings = ["Hello","World"]
       file.writelines(string)
   counter+=1

请注意,在您的代码中您没有关闭文件,但使用 with 将为您处理。

编辑:

要检查给定目录中已经存在哪些 .txt 个文件名,您可以使用 glob:

import glob
filenames = [file for file in glob.glob('/some/directory/*.txt')]

假设您只有 example{counter}.txt 这样的文件,最后一个元素将具有最大的计数器,然后您可以提取它:

last_filename = filenames[-1]
counter = int(last_filename .split('.')[0][-1])