我处于学习模式——这可能是一个愚蠢或 rtfm 的问题,但它是:Python os 库的源代码在哪里?我已经下载了 Python 压缩包。那里有很多用法,但似乎找不到源代码本身以及它如何与操作系统挂钩。我很想看看 os.* 调用(例如 os.read、os.write...)做了什么。我查看了 *builtin* 文件,但没有看到任何内容。感谢您的提示。
问问题
8714 次
2 回答
20
os
的实现分散在许多文件中。
核心 C 函数主要位于Modules/posixmodule.c中,尽管它的名称,除了 POSIX 例程之外,它还包含 Windows NT 和 OS/2 上的 OS 例程的实现。
C 函数的包装器位于Lib/os.py中,os.path
函数由Lib/ntpath.py或Lib/posixpath.py提供,具体取决于您的平台。
于 2013-01-30T20:45:00.117 回答
4
如果一个模块是在 Python 代码中定义的,您可以__file__
在导入后通过检查模块的属性来找到该文件:
>>> import os
>>> os.__file__
'C:\\python27\\lib\\os.pyc'
如果文件是 .pyc,则只需删除最后一个“c”即可获取 .py 文件。
但是,您要查找的函数实际上可能是从已编译的 C 扩展中导入的。
于 2013-01-30T20:38:38.183 回答