【发布时间】:2015-03-20 23:24:22
【问题描述】:
我见过具有%values 等属性的 Python 对象。我无法访问此类属性,因为它们会引发SyntaxError。他们似乎还要求在没有SyntaxError 的情况下创建setattr:
class A(object):
pass
a = A()
setattr(a, "%values", 42)
a.%values # results in SyntaxError: invalid syntax
class B(object):
def __init__(self):
self.%values = 42 # results in SyntaxError: invalid syntax
% 在这里有什么目的或意义吗?为什么可以使用setattr 设置%values,否则会引发SyntaxError?
【问题讨论】:
-
你为什么要创建一个带有 % 符号的变量? % 是一个运算符,这就是您收到语法错误的原因。只需使用 getattr() 即可访问它
标签: python object attributes setattr