这是操作系统中的错误还是有人可以向我解释发生了什么事?
>>> os.path.realpath("C:")
'C:\\PythonApp'
>>> os.path.realpath("E:")
'E:\\'
我当前的目录是C:\PythonApp
。如果我给它一个未知的路径名(例如 os.listdir ),那么 os 似乎默认为当前目录,那么为什么它适用于 E 而不是 C?
>>> os.path.realpath("C:")
'C:\\PythonApp'
>>> os.path.realpath("E:")
'E:\\'
My current directory is C:\PythonApp
. It seems os
defaults to the current directory if I give it an unknown path name for something like os.listdir
so why does it work for E and not C?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
比较一下您得到的结果:
Windows 为每个驱动器保存一个“当前目录”,
C:
(不带斜杠)指的是该目录,而不是驱动器的根目录。os.path.join
的 python 文档提到了这一点:Compare what you get with:
Windows saves a "current directory" for each drive, and
C:
(without the slash) refers to that, not the root of the drive.The python docs for
os.path.join
mention this: