为什么不';t Python';s内置函数是否有代码对象?
我对python相当陌生,所以这可能是一个明显的问题,但我到处都搜索过(包括文档),似乎无法获得python中内置函数的code对象。例如,在我的PyCharm编辑器中,当我键入此代码时,它不会检测到任何错误:为什么不';t Python';s内置函数是否有代码对象?,python,Python,我对python相当陌生,所以这可能是一个明显的问题,但我到处都搜索过(包括文档),似乎无法获得python中内置函数的code对象。例如,在我的PyCharm编辑器中,当我键入此代码时,它不会检测到任何错误: print(getattr.__code__) 但当我运行它时,它会给出一个AttributeError: AttributeError: 'builtin_function_or_method' object has no attribute '__code__' python中的
print(getattr.__code__)
但当我运行它时,它会给出一个AttributeError:
AttributeError: 'builtin_function_or_method' object has no attribute '__code__'
python中的内置函数没有代码对象,这在我的IDE中是一个bug吗
我使用的是Python 3。内置函数没有代码对象,因为它们是用C语言实现的,而不是用Python实现的。只有Python函数具有代码对象,因为代码对象是由Python字节代码编译而成的。是对代码对象的一个很好的解释。要检测错误,IDE必须执行代码。它不知道代码是否具有破坏性,所以不会这样做。但“内置函数”或“方法”是否仍有代码对象?如果该对象是用C实现的,则它没有
\u代码\u
属性。很多内置的都是C。谢谢你的链接和简短的解释。