我的问题来自this question,其中一位用户因不知不觉地重新绑定内置全局set
而感到困惑。有没有一种简单的方法让python在你试图覆盖内置函数时发出警告?
我更专注于Mathematica。在Mathematica中,所有内置函数都具有属性Protected
。如果您尝试重新定义Set
,它会告诉您Set
为Protected
并保持不变,以后可能会让您免于大量混乱,因为应该工作的事情会停止没有明显的原因。如果你真的非常想重新定义Set
,你仍然可以这样做 - 你必须首先Unprotect
。您也可以Protect
使用自己的符号来保护它们免受意外重新定义。
也许经验丰富的pythoners不需要这个,但如果像我这样的新手有这样的东西会很好。 (想想看,我已经为Mathematica编程了15年,Protected
偶尔也会保存我的培根。)
答案 0 :(得分:4)
def set():
pass
会生成此警告:
[W0622,set]重新定义内置'设置'
您可以在编写文件后在文件上运行它,或者在文件中使用它。 Vim,你去。大多数IDE也会生成这种信息