有没有办法阻止名称绑定,或者变量不被反弹?
例如,给定一个foo
变量,是否可以让赋值操作引发异常?
更具体地说,如果我们对foo
的课程有完全控制权,那么以下会话是否可能?
>>> foo = 2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
WhateverError: foo cannot be bound
我知道可以将类属性设置为只读,或使用__slots__
来阻止添加新成员,但我想知道是否可以在自由变量上实现相同(如,非成员变量)。
此外,我假设作业的左侧成员是有效的标识符。
我出于好奇而问这个问题。我没有尝试用这个来完成任务,所以这不是XY问题。