【问题标题】:Creating folder in python [duplicate]在python中创建文件夹[重复]
【发布时间】:2018-12-10 10:28:55
【问题描述】:

我想在python中的当前时间一小时后创建一个文件夹。我知道如何获取当前时间和日期并创建一个文件夹。但是如何在我指定的时间创建一个文件夹。任何帮助将不胜感激。

from datetime import datetime
from datetime import timedelta 
import os
while True:
    now = datetime.now ()
    #print(now.strftime("%H:%M:%S"))
    y = datetime.now () + timedelta (hours = 1)
    #print(y.strftime("%H:%M:%S"))
    if now== y:
      os.makedirs (y.strftime ("%H/%M/%S"))

这行得通吗?

编辑:- 我必须连续运行代码,即每时每刻都创建文件夹

【问题讨论】:

  • 如果你打算同时做其他事情(我猜你这样做),你将需要一些线程来等待时间过去,然后创建你的文件夹
  • 你可以使用time.sleep()来保持你的线程活跃

标签: python python-3.x


【解决方案1】:

试试这个简单的代码

import os
import time

while True:    
  time.sleep(3600) # pending for 1 hour (3600 seconds)
  os.makedirs(your directory) # create the directory

编辑(使用并行编程)

import os
import time
from datetime import datetime
from multiprocessing import Pool

def create_folder(now):
  # you can manipulate variable "now" as you wish
  time.sleep(3600) # pending for 1 hour (3600 seconds)
  os.makedirs(your directory) # create the directory
  return

while True:
  pool = Pool()
  now = datetime.now()    
  result = pool.apply_async(create_folder, [now]) # asynchronously evaluate 'create_folder(now)'

这可能会消耗您的许多计算机资源

【讨论】:

  • 您能否添加一些解释,说明您的代码为何以及如何回答问题?
  • 我必须连续运行代码,即每时每刻都创建文件夹
  • 那么你可以在这些代码之间加上while True:
  • 你的代码还是我的?可以出示一下代码吗?
  • 我的代码,我已经编辑了示例
【解决方案2】:

每隔 60 秒创建多个文件夹,如 New1、New2、...

  import time

    while True:
        time_Begin = time.time()

        print("Creating Folder....")
        # CODE FOR CREATING FOLDER AND CONDITION

        time_End = time.time()
        time_Elapsed = time_End - time_Begin
        time.sleep(60-time_Elapsed)

直到外部进程没有完成

import time
import random


def creatingFolder():
    while externalProcess() != 30:
            timeBegin = time.time()

            print("Creating Folder....", timeBegin)

            timeEnd = time.time()
            timeElapsed = timeEnd - timeBegin
            time.sleep(5-timeElapsed)


def externalProcess():
    return random.randint(1, 30)

creatingFolder()

【讨论】:

  • 我现在必须在一小时后创建一个文件夹,然后继续这个过程,直到我的外部进程没有结束。
【解决方案3】:

查看这篇文章以获得更好的解释,您可以创建一个在给定时间后运行的函数,您可以使用此函数通过简单的一行代码创建文件夹 os.makedirs("路径\目录名") Python - Start a Function at Given Time

【讨论】:

    猜你喜欢
    • 2011-03-10
    • 2013-07-21
    • 2013-04-29
    • 1970-01-01
    • 2016-02-22
    • 1970-01-01
    • 1970-01-01
    • 2021-10-01
    • 2021-11-22
    相关资源
    最近更新 更多