如何用Python切换新建日期命名文件夹为工作目录?问题求助
问题解决:创建日期文件夹并设置工作目录失败
核心问题出在os.path.dirname(delovnaMapa)的使用上:
- 你实际把日期文件夹创建在了
C:\Users\Tim\Desktop\ARSOFinalTest目录下 - 但
os.path.dirname()会返回传入路径的父目录,也就是C:\Users\Tim\Desktop,这就导致你拼接的工作目录路径完全偏离了实际创建的文件夹位置
正确的解决方法
直接基于原目标文件夹路径拼接日期文件夹,推荐用os.path.join()自动处理路径分隔符(避免手动混用/和\的问题):
修正后的完整代码:
import os from datetime import datetime delovnaMapa = r"C:\Users\Tim\Desktop\ARSOFinalTest" print(delovnaMapa) today = datetime.now() dateAndTime = today.strftime("%Y-%m-%d") # 用os.path.join拼接路径,兼容不同系统 target_folder = os.path.join(delovnaMapa, dateAndTime) os.mkdir(target_folder) # 直接用创建好的目标文件夹路径作为工作目录 os.chdir(target_folder) print(f"已切换到工作目录:{os.getcwd()}")
为什么之前的代码出错?
当你执行os.path.dirname(delovnaMapa)时,传入的路径是C:\Users\Tim\Desktop\ARSOFinalTest,这个函数会返回它的父级目录C:\Users\Tim\Desktop,所以你拼接出来的workingDirectory是C:\Users\Tim\Desktop/2022-10-30,但你实际创建的文件夹在C:\Users\Tim\Desktop\ARSOFinalTest\2022-10-30,系统自然找不到这个不存在的路径。
内容的提问来源于stack exchange,提问作者Timko99
相关产品推荐
相关产品推荐

