[Level 2] Implement static/class method in Python class.
You can use @staticmethod (decorator) to implement static method in Python class.
Execute it.
Wish this helps.
regards,
Stanley Huang
#!/usr/bin/env python
class de:
def __init__(self):
self.a = 1
def getA(self):
return self.a
@staticmethod
def getB():
return 2
@classmethod
def getCN():
return cls.__name__
if __name__ == '__main__':
d = de()
print 'd.getA() = %s' % d.getA()
print 'de.getB() = %s' % de.getB()
print 'classname of de = %s' % de.getCN()
print 'de.getA() = %s' % de.getA()
def __init__(self):
self.a = 1
def getA(self):
return self.a
@staticmethod
def getB():
return 2
@classmethod
def getCN():
return cls.__name__
if __name__ == '__main__':
d = de()
print 'd.getA() = %s' % d.getA()
print 'de.getB() = %s' % de.getB()
print 'classname of de = %s' % de.getCN()
print 'de.getA() = %s' % de.getA()
Execute it.
$ ./t.py
de.getA() = 1
de.getB() = 2
classname of de = de
Traceback (most recent call last):
File "./t.py", line 15, in
print 'de.getA() = %s' % de.getA()
TypeError: unbound method getA() must be called with de instance as first argument (got nothing instead)
de.getB() = 2
classname of de = de
Traceback (most recent call last):
File "./t.py", line 15, in
print 'de.getA() = %s' % de.getA()
TypeError: unbound method getA() must be called with de instance as first argument (got nothing instead)
Wish this helps.
regards,
Stanley Huang
Comments
Post a Comment