如何避免覆盖包含python中所有打印结果的文件?



我正在运行一个Python脚本在交换机上运行命令。它正在记录运行这些命令的开关,并将此输出打印到文件中。

现在我将对我的文件进行更改并重新运行它。现在生成的结果将保存在与前一个文件相同的位置。我不想覆盖之前的文件。相反,我想创建另一个文件,并对这两个文件进行修改。此外,如果在输出文件的目录中有另一个具有相同名称的文件,脚本应该创建另一个文件。我正在使用Python 3.

import os

我假设你写的是"当前工作目录"。在本例中,我将使用os.getcwd()作为输出位置。

无论如何,您可以使用os.listdir(os.getcwd())来获取您要写入的文件夹中所有文件的名称。然后像这样迭代:

filename = "75077597_"
suffix = ".txt" 
files = os.listdir() # if there's a specific path, add it as an argument
for number in range (40000): 
if not (filename + str(number) + suffix) in files: 
# write file using the filename: (filename + str(number) + suffix)
break

最新更新