>>> os.path.realpath("C:")
'C:\\PythonApp'
>>> os.path.realpath("E:")
'E:\\'
我当前的目录是C:\PythonApp
。似乎os
默认为当前目录,如果我给它一个类似os.listdir
的未知路径名,那为什么它适用于E而不是C?
答案 0 :(得分:6)
比较你得到的东西:
os.path.realpath("C:\\")
Windows为每个驱动器保存一个“当前目录”,而C:
(没有斜杠)是指那个,而不是驱动器的根。
os.path.join
的python文档提到了这一点:
请注意,在Windows上,由于每个驱动器都有一个当前目录,os.path.join(“c:”,“foo”)表示相对于驱动器C上当前目录的路径:(c:foo) ,而不是c:\ foo。