我正在用 Python 为 Windows 编写一个命令行目录导航器,并且在 os.path.join 上有点挣扎。本质上,这就是我想要做的事情:
abspath = "C:\Python32\Projects\ls.py"
abspath = abspath.split('\\')
print(abspath) #this prints ['C:', 'Python32', 'Projects', 'ls.py']
if(options.mFlag):
print(os.path.join(*abspath)) #this prints C:Python32\Projects\ls.py
m = time.ctime(os.path.getmtime(os.path.join(*abspath))) #this throws an exception
问题是 os.path.join 没有在“C:”之后插入“/”,我不知道为什么。有什么帮助吗?
编辑:如果将来有人来这里寻找解决方案,我只是在“C:”之后添加了 os.sep,而不是硬编码反斜杠,这很有效。