setattr
将设置不能与常规属性访问一起使用的名称,即obj.name
。你知道吗
>>> from types import SimpleNamespace
>>> my_instance = SimpleNamespace()
>>> setattr(my_instance, 'from', 0) # works
>>> getattr(my_instance, 'from')
0
>>> my_instance.from
SyntaxError: invalid syntax
我如何检查这些名字,以避免使用它们?你知道吗
在Python3上
我们检查属性名是否是字符串,是否符合Python标识符的格式,是否不是关键字。
isidentifier
不排除关键字,因此需要额外的检查。你知道吗(是的,
isinstance
是一个东西,但是我不想允许str
子类。)相关问题 更多 >
编程相关推荐