误将Python内置函数repr赋值为int后报错,如何无需重启Spyder修复?
无需重启Spyder修复
repr被覆盖的问题 当然可以不用重启Spyder解决这个问题!你遇到的报错根源很简单:你在控制台里执行了repr = 64,把Python内置的repr()函数给不小心覆盖成了一个整数变量。现在再调用repr(b64)时,Python会把repr当成整数来处理,自然就抛出了“int object is not callable”的错误。
下面有两种简单的修复方法:
方法一:从内置模块恢复
repr函数
在Spyder的Python控制台里运行这条命令:import builtins repr = builtins.repr这条命令会从Python的
builtins模块中重新获取原本的repr内置函数,覆盖掉你之前定义的整数变量。方法二:直接删除自定义的
repr变量
如果你不想导入模块,也可以直接删除你定义的这个repr变量:del repr删除之后,Python会自动重新使用全局作用域里的内置
repr函数。
修复完成后,你再尝试运行repr(b64),应该就能正常执行,不会再报错啦。
内容的提问来源于stack exchange,提问作者mn2609
相关产品推荐
相关产品推荐

