在python标准库中查找方法
在我的python标准库(python在python标准库中查找方法,python,python-2.7,standard-library,Python,Python 2.7,Standard Library,在我的python标准库(python2.7)中,我正在寻找模块中的特定方法 例如,如果我打开re.py,我可以看到有一些特定的方法,如findall,search等。 当我执行dir(re)时,这一点也很明显。我可以清楚地看到上述方法 类似地,当我执行dir(os)时,存在一个名为system的方法,我通常使用os.system(cmd\u name)调用该方法 但是当我在os.py下查找此方法时,它并不存在。我做错什么了吗?请引导此函数未在os模块中定义,因此在os.py中找不到定义。它从另
2.7
)中,我正在寻找模块中的特定方法
例如,如果我打开re.py
,我可以看到有一些特定的方法,如findall
,search
等。
当我执行dir(re)
时,这一点也很明显。我可以清楚地看到上述方法
类似地,当我执行dir(os)
时,存在一个名为system
的方法,我通常使用os.system(cmd\u name)
调用该方法
但是当我在
os.py
下查找此方法时,它并不存在。我做错什么了吗?请引导此函数未在os
模块中定义,因此在os.py
中找不到定义。它从另一个模块导入到os
;哪个模块将取决于您的操作系统。您可以检查:
>>> os.system.__module__
'nt'
在这里,您可以看到,由于我在Windows上,os.system
来自nt
模块
您可能会发现
os.system.\uuu模块\uuu
是'nt'
或'posix'
,表示nt
或posix
模块。那么问题是,这些模块是在哪里定义的?没有nt.py
或posix.py
事实证明,这些模块是用C语言实现的。是的,
nt
模块是posixmodule.c
,posix模块也是。这很奇怪。如何访问nt模块?我想看看def的代码system@fsociety:答案展开。有没有办法查看posixmodule.c?请原谅我的错误ignorance@fsociety:如果你再看一次,你会发现我提供了一个链接@社会:你不能。