繁体   English   中英

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

[英]How can I avoid overwriting a file which has all the print result in python

我正在运行 Python 脚本以在交换机上运行命令。 它正在记录运行这些命令的交换机并在文件中打印此 output。

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

import os

我假设您正在写入“当前工作目录”。 在这种情况下,我将使用 os.getcwd() 作为 output 位置。

无论如何,您可以使用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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM