python os库源代码位置

16 投票
2 回答
10724 浏览
提问于 2025-04-17 14:14

我现在在学习阶段——这个问题可能有点傻或者是“去看看手册”的问题,但我还是想问:
Python的os库的源代码在哪里呢?我下载了Python的压缩包,里面有很多用法,但就是找不到源代码本身,也不知道它是怎么和操作系统连接的。我想看看os.*这些调用是怎么实现的(比如os.read,os.write……)。我查过*builtin*文件,但没有找到任何东西。
谢谢你的提示。

2 个回答

6

如果你在Python代码中定义了一个模块,你可以在导入这个模块后,通过查看它的__file__属性来找到这个文件。

>>> import os
>>> os.__file__
'C:\\python27\\lib\\os.pyc'

如果文件是以 .pyc 结尾的,那只需要把最后的 'c' 去掉,就能得到 .py 文件。

不过,你想找的那个功能可能实际上是从一个编译过的C扩展中导入的。

22

os模块的实现分散在多个文件中。

核心的C语言函数大部分都在Modules/posixmodule.c这个文件里。虽然这个文件的名字是“posixmodule”,但它不仅包含POSIX(一个操作系统标准)相关的功能,还包括Windows NT和OS/2的操作系统功能。

这些C语言函数的封装(也就是让它们更容易使用的部分)在Lib/os.py文件中。而os.path相关的功能则根据你的操作系统,分别在Lib/ntpath.pyLib/posixpath.py文件中提供。

撰写回答