Python 2.7 从同一类中的另一个静态方法访问静态方法变量
面对这样的错误:Python 2.7 从同一类中的另一个静态方法访问静态方法变量,python-2.7,Python 2.7,面对这样的错误: AttributeError: 'function' object has no attribute 'd'. 如何使用字典 代码: 查看Python中的静态变量问题 当您希望使用静态变量时,应该能够使用A.d和A.d1对其进行排序。请注意,正如您所拥有的,它们分别是test和test1的本地对象。如果希望它们是静态的,则必须在类范围内声明它们,但不能在任何函数定义内声明它们。谢谢,正如您所说,我已将其声明为局部变量,但在声明为函数外部但在类内部的全局变量后,通过a.d['a
AttributeError: 'function' object has no attribute 'd'.
如何使用字典
代码:
查看Python中的静态变量问题
当您希望使用静态变量时,应该能够使用A.d和A.d1对其进行排序。请注意,正如您所拥有的,它们分别是test和test1的本地对象。如果希望它们是静态的,则必须在类范围内声明它们,但不能在任何函数定义内声明它们。谢谢,正如您所说,我已将其声明为局部变量,但在声明为函数外部但在类内部的全局变量后,通过a.d['a']==d1['a']访问了任何函数内部的全局变量如果这个答案解决了您的问题,您应该通过单击它旁边的复选标记来接受它。这将让其他可能面临类似问题的人知道答案也可能对他们有所帮助。它还将奖励发布它的人为帮助你所做的努力。
class A:
@staticmethod
def test():
d = {}
d['a'] = 'b'
print d
@staticmethod
def test1():
d1 = {}
d1['a'] = 'c'
if (A.test.d['a'] == A.test1.d1['a']):
print "yes"
else:
print "Oh No!!"
A.test()
A.test1()