【问题标题】:Problem with os.makedirs in Python not creating sub directoryPython中的os.makedirs问题没有创建子目录
【发布时间】:2019-03-26 08:41:20
【问题描述】:

我有一个每小时运行的脚本。

输出文件夹结构应该是/todaysdate/hour/

因此,在 00:00,脚本将运行并且它应该同时创建 todaysdate 文件夹和一个名为 00 的子文件夹。

在 01:00,脚本将运行 - todaysdate 目录存在,因此它应该只创建子目录。

我已经尝试了以下方法,但这不起作用 - 我该如何处理?

file_path = 'Desktop/%s/%s' %(today_date, hour)
directory = os.path.dirname(file_path)
if not os.path.exists(directory):
    os.makedirs(directory)

【问题讨论】:

  • print(os.getcwd()) 的输出是什么?那是您的桌面所在的位置吗?

标签: python python-3.x directory operating-system


【解决方案1】:

您声明要为每个小时创建目录。所以你不需要获取目录名。应该这样做:

file_path = 'Desktop/%s/%s' %(today_date, hour)
if not os.path.exists(file_path):
    os.makedirs(file_path)

请参阅os.path.dirname 的文档。这将为您提供包含 file_path 的目录,例如

file_path = "Desktop/22-10-2018/00"
print(os.path.dirname(file_path))
>>> "Desktop/22-10-2018/"

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2011-12-19
  • 2020-07-06
  • 2020-02-03
  • 2016-01-14
  • 2016-04-28
  • 1970-01-01
  • 2017-11-07
  • 2015-10-28
相关资源
最近更新 更多