1.1 定义: class [类名](父类名): 【注意要有冒号】
如果没有特别指定的父类,建议父类为object,即 “ class [类名](父类object):”
1.2 self,cls
self,cls类是C++的this指针,分别代表实例指针和类指针。注意self,cls并不是关键字,即使改成其他名字不影响编译执行,但是从维护代码的角度来看,不建议更改。
1.3 构造函数和析构函数
构造函定义:def __init__(self): 【注意要有冒号】
析造函定义:def __del__(self): 【注意要有冒号】
1.4 实例变量和类变量(访问等级待补充)
a) 实例变量:
实例变量定义在构造函数中,这些变量只有经过实例化后才可以调用,不通实例同一种实例变量相互独立
定义方式如下:
def __init__(self):
self.a
self.b
....
class A ( object ):
def foo ( self , x ):
print "executing foo(%s,%s)" %( self , x )
@classmethod
def class_foo ( cls , x ):
print "executing class_foo(%s,%s)" %( cls , x )
@staticmethod
def static_foo ( x ):
print "executing static_foo(%s)" % x
a = A ()
a . foo ( 1 )
# executing foo(<__main__.A object at 0xb7dbef0c>,1)
a . class_foo ( 1 )
# executing class_foo(<class '__main__.A'>,1)
A . class_foo ( 1 )
# executing class_foo(<class '__main__.A'>,1)
a . static_foo ( 1 )
# executing static_foo(1)
print ( a . foo )
# <bound method A.foo of <__main__.A object at 0xb7d52f0c>>
print ( a . class_foo )
# <bound method type.class_foo of <class '__main__.A'>>
print ( a . static_foo )
# <function static_foo at 0xb7d479cc>