Python 为什么使用inspect模块无法找到Numpy中共轭的源代码?

Python 为什么使用inspect模块无法找到Numpy中共轭的源代码?,python,numpy,Python,Numpy,我想看看Numpy中使用的共轭函数的实现。然后我尝试了以下方法: 将numpy导入为np 进口检验 inspect.getsource(np.共轭) 但是,我收到以下错误消息,指出不是模块、类、方法、函数、回溯、帧或代码对象。有人能回答为什么吗 [8]中的:inspect.getsource(np.conjugate) --------------------------------------------------------------------------- TypeError回溯(

我想看看
Numpy
中使用的
共轭
函数的实现。然后我尝试了以下方法:

将numpy导入为np
进口检验
inspect.getsource(np.共轭)
但是,我收到以下错误消息,指出
不是模块、类、方法、函数、回溯、帧或代码对象。有人能回答为什么吗

[8]中的
:inspect.getsource(np.conjugate)
---------------------------------------------------------------------------
TypeError回溯(最近一次调用上次)
在()
---->1.检查getsource(np.conj)
/getsource(对象)中的Users/duanlx/anaconda/python.app/Contents/lib/python2.7/inspect.pyc
699或代码对象。源代码作为单个字符串返回。一
如果无法检索源代码,则引发IO700错误。”“”
-->701行,lnum=getsourcelines(对象)
702返回字符串。联接(行“”)
703
/getsourcelines(对象)中的Users/duanlx/anaconda/python.app/Contents/lib/python2.7/inspect.pyc
688原始源文件找到第一行代码。IOError为
如果无法检索源代码,则引发689。”“”
-->690行,lnum=findsource(对象)
691
692如果ismodule(对象):返回行,0
/findsource(对象)中的Users/duanlx/anaconda/lib/python2.7/site-packages/IPython/core/ultratb.pyc
149固定版本,我们可以用它修补stdlib以解决一个bug。”“”
150
-->151 file=getsourcefile(对象)或getfile(对象)
152#如果对象是帧,则尝试从其
153#模块无法工作。相反,框架对象本身具有全局变量
/getsourcefile(对象)中的Users/duanlx/anaconda/python.app/Contents/lib/python2.7/inspect.pyc
442如果无法确定获取源的方法,则返回None。
443     """
-->444 filename=getfile(对象)
445如果('.pyc','.pyo')中的字符串.lower(文件名[-4:]):
446 filename=文件名[:-4]+'.py'
/getfile(对象)中的Users/duanlx/anaconda/python.app/Contents/lib/python2.7/inspect.pyc
418返回object.co_文件名
419 raise TypeError('{!r}不是模块、类、方法,'
-->420“函数、回溯、帧或代码对象”。格式(对象))
421
422 ModuleInfo=namedtuple('ModuleInfo','name后缀模式模块类型')
TypeError:不是模块、类、方法、函数、回溯、帧或代码对象

谢谢

Numpy是用C写的,表示速度。您只能看到Python函数的源代码。

感谢您的快速响应。我可以知道如何确定
Numpy
函数是否用
C
编写吗?我发现它包含了所有的
Numpy
函数(在
python
C
中),但这似乎并不明显。几乎所有的Numpy都是在C,IIRC中。一般来说,任何性能至关重要的东西都是C语言。那么如何在C语言中看到它的来源呢?