Python:“import posix”的问题

时间:2011-06-17 06:45:47

标签: python posix

如果我导入os模块,我可以运行以下命令来推断os.py的位置

>>> import os
>>> print os.__file__
/usr/lib/python2.6/os.pyc

但是,当我导入posix时,它没有__file__属性。是因为它是作为python运行时的一部分实现的,而不是作为标准库实现的?

如何仅使用python官方文档找到更多相关信息?

3 个答案:

答案 0 :(得分:6)

这是一个C模块。它既可以内置到Python二进制文件中,也可以编译为共享库。在你的情况下,它是在

编译

official docs说不要直接导入它,您应该使用os提供的功能

答案 1 :(得分:3)

以交互方式运行python。

>>> import posix
>>> help(posix)

那里有很多好东西。

FILE
    (built-in)

答案 2 :(得分:1)

您还可以使用'inspect'模块查找有关python模块的信息(比如源文件路径等)。例如:

import inspect
import os
inspect.getsourcefile(os)
'/usr/local/lib/python2.7/os.py'

inspect.getsourcefile(inspect)
'/usr/local/lib/python2.7/inspect.py'

import sys        
inspect.getsourcefile(sys)
Traceback (most recent call last):
[...]
raise TypeError('{!r} is a built-in module'.format(object))
TypeError: <module 'sys' (built-in)> is a built-in module