我是python的新手。我想学习如何制作和使用"常数"。这是我的代码:
class Constantine(object):
ONE = 1
TWO = 2
def test(self, code):
if code not in(self.ONE, self.TWO):
print("safe")
else:
print("not safe")
keeanu = Constantine()
keeanu.test(1)
我希望代码打印安全。但是,它打印不安全。为什么?
答案 0 :(得分:3)
您正在code
中测试(self.ONE, self.TWO)
不是 。如果找到 ,则会打印not safe
,这样做。
找到它的原因是因为解释器首先查找self.ONE
和self.TWO
作为实例变量。如果在该级别找不到它们,则解释器将尝试将它们解析为类变量。这对你的代码来说很成功。