基于日期的Python文件路径

时间:2016-09-14 18:55:52

标签: python windows

创建一个脚本,该脚本将自动处理当天的文件路径,执行某些操作,然后保存到同一目录。

文件夹结构基于日期:

maindir - > year - > month - >那个月的文件。

到目前为止,我的方法是:

year = time.strftime("%Y")
month = time.strftime("%B")
dir = parse('C:\maindir' + '\' + str(year) + '\' + str(month))
os.chdir(dir)

但是,我希望稍后将其与os.makedirs重复使用,以便在我去的时候自动生成文件夹结构。

或者最好制作一个解析dir路径的方法,以便我可以调用它:

if not os.path.exists(method):
    try:
        os.makedirs(os.path.dirname(method))

更新

发现这个讨论有很多帮助 - constructing absolute path with os.join()

netdrive="\\network.com\mainfolder$"
year = time.strftime("%Y")
month = time.strftime("%B")
path=path.abspath(path.join(os.sep,netdrive,year,month))
if not os.path.exists(path):
    os.makedirs(path)
os.chdir(path)

所以,我已经在这方面取得了一些进展 - 但是,现在我遇到了识别网络驱动器的问题,因为目前它使用C:/默认值作为path.abspath的一部分。如何将其覆盖到新的根驱动器,而不依赖于驱动器映射到的驱动器?一个用户D:/,第二个E:/ - 等等

1 个答案:

答案 0 :(得分:1)

由于路径仅包含年份和月份,因此目录平均连续30天保持不变。

因此,在创建目录之前,最好先检查目录是否已存在。

if not os.path.exists(directory):
   os.makedirs(directory)