Pycharm无法识别内置

时间:2017-04-14 04:07:54

标签: python python-3.x intellij-idea pycharm

我在 Ubuntu 16.04.2 LTS Python 3.5.2 , PyCharm Community Edition 2017.1.1 >

我是Python的初学者,我试图让这段代码发挥作用。

a = getattr(__builtins__, 'print')

实际上它在IDLE中运行良好,但Pycharm无法识别内置函数。其他常见的内置函数如str(),int()......都很好。

我在Pycharm support搜索了解决方案。

  

"重新加载"设置中的按钮| Python解释器为二进制模块重新生成骨架,包括内置函数。请尝试按下它。

但它不起作用。我在Pycharm得到这个......

AttributeError: 'dict' object has no attribute 'print'

提前谢谢。

1 个答案:

答案 0 :(得分:2)

您不应直接使用__builtins__,而应使用builtins模块。

在pycharm python控制台中,__builtins__充当dict,在这种情况下,您需要通过print检索a = __builtins__['print']。相反,如果您将其作为脚本运行,__builtins__将充当builtinsø模块的模块表示。在这种情况下,您需要使用a = getattr(__builtins__, 'print')a = __builtins__.print按照自己的方式进行操作。

但正如我之前所说,您不应该直接使用__builtins__关键字。你应该这样做:

import builtins
a = builtins.print # or getatrr(builtins, 'print') which either way you prefer

也许还要检查this answer