我试图理解os.path.isdir
如果输入:
help(os)
我收到了一份'' python可以使用os
我找不到名为path
而非pathconf(...)
然而,当我输入:
help(os.path)
我提供的选项包括isdir(s)
为什么我没有看到有关path
的信息?
答案 0 :(得分:4)
这是因为名称path
未直接在模块os.py
中定义。相反,它是从其他地方导入和别名的。实现与平台有关。
在Windows systems上,您将拥有:
import ntpath as path
在Linux / macOS上,您将拥有:
import posixpath as path
由于os.path
只是对posixpath
或ntpath
等其他模块的引用,因此您始终可以查看help(os.path)
。
答案 1 :(得分:1)
os.path
是一个模块。因此,它不会显示在os
的帮助中。相反,它有自己的帮助。 os.path.__file__
将显示此模块的实际路径。来自os
的文档:
- os.path是posixpath或ntpath
os
来源的相关部分:
if 'posix' in _names:
# ...
import posixpath as path
elif 'nt' in _names:
# ...
import ntpath as path
答案 2 :(得分:0)
os
为/usr/lib/python2.7/os.py
,os.path
为/usr/lib/python2.7/posixpath.py
(或Windows上为ntpath.py
)。 help
函数只是从这两个文件中读取文档字符串。