检查3个不同文件夹中的文件,如果存在文件名(1)、文件名(2)则重命名

2024-10-03 23:22:36 发布

您现在位置:Python中文网/ 问答频道 /正文

任务1:我已经完成了。你知道吗

编写一个python脚本,生成三组50个文件(总共150个文件),文件名中包含过去50天内的随机日期:

IT421号_unixdate.txt文件,IT151号_unixdate.txt文件,IT620号_unixdate.txt文件你知道吗

任务2:

编写python脚本以:

  1. 检查文件夹IT421、IT151、IT620是否存在,如果不存在,则创建它们。将以ITx开头的文件移到文件夹ITx中

  2. 如果文件夹中已存在该文件,请按以下示例重命名它:

IT421_1456991403.txt变成IT421_1456991403(1).txtIT421_1456991403(1).txt变成IT421_1456991403(2).txt,依此类推…。你知道吗

我被任务2第2部分困住了

#!/usr/local/bin/python3
import random
import time
import os

folders = ["IT421", "IT151", "IT620"]

#task2(1)

for i in range(0,len(folders)):

    if not os.path.exists(folders[i]):
        os.mkdir(folders[i])

#task1
    for i in range (0,50):
        for classIT in folders:
            pastFiftyDays = int(time.time()) - 432000
            currentTime = int(time.time())
            timeStamp = str(random.randrange(pastFiftyDays, currentTime))

            #Task2(2)   
            if classIT == "IT151":
                open('IT151/' + classIT + "_" + timeStamp + .txt".format(classIT), "w")
            elif classIT == "IT421":
                open('IT421/' + classIT + "_" + timeStamp + ".txt".format(classIT), "w")
            else:
                open('IT620/' + classIT + "_" + timeStamp + ".txt".format(classIT), "w")

这是我一直在尝试的东西。你知道吗

    #!/usr/local/bin/python3
    import os
    import fnmatch

    folders = ["file_a", "file_z", "file_c"]
    for i in range(0,len(folders)):
        x = folders[i]
        for filename in os.listdir('./temp'):
            if fnmatch.fnmatch(filename, folders[i] + '.txt'):
                    open('temp/' + x + "(1).txt".format(x), "w")
            else:
                    open('temp/' + x + ".txt".format(x), "w")

我是python新手,几天来一直在寻找解决这个问题的方法。任何帮助都将不胜感激。非常感谢。你知道吗


Tags: 文件inimporttxtformatfortimeos