摘要: class TestClassMethod(object): METHOD = 'method hoho' def __init__(self): self.name = 'leon' def test1(self): print 'test1' print self @classmethod def test2(cls): print cls print 'test2' print TestClassMethod.METHOD print '------------... 阅读全文
posted @ 2012-12-04 22:27 践道者 阅读(51117) 评论(0) 推荐(0) 编辑
摘要: __init__ :创建类时最常用的方法,目的是为了初始化对象,相当于java的构造函数NOTE:一个类的所有数据属性应该在这里赋初始值,以节省后面的调试时间,不必为捕捉因使用未初始化(也就是不存在)的属性而导致产生AttributeError异常__new__:创建类实例,具体用法示例可以看http://www.cnblogs.com/bjdxy/archive/2012/12/04/2801649.html__dict__:存储实例属性及值__class__:生成实例的类__base__:所有基类__name__:类名称__method__:实例具有的方法 ,已经废弃,用dir(实例)__ 阅读全文
posted @ 2012-12-04 19:29 践道者 阅读(606) 评论(0) 推荐(0) 编辑
摘要: 1. id():获取的是对象在内存中的地址2. is :比对2个变量的对象引用(对象在内存中的地址,即id() 获得的值)是否相同。如果相同则返回True,否则返回False。换句话说,就是比对2个变量的对象引用是否指向同一个对象。3. ==:比对2个变量指向的对象的内容是否相同。下面通过cmp函数比较两个对象的差异: 1 class MyClass(object): 2 def __init__(self, name): 3 self.name = name 4 5 def __cmp__(self, other): 6 return cmp... 阅读全文
posted @ 2012-12-04 18:50 践道者 阅读(2418) 评论(0) 推荐(0) 编辑
摘要: 与__init__一样,每当实例化类时MyClass(*args, **kwargs) ,__new__ 都会默认自动执行MyClass.__new__(*args, **kwargs),如果想改变默认__new__行为,可以对它自定义看一个英寸转换为米例子:1 class inch(float):2 def __new__(cls, arg=0.0):3 return float.__new__(cls, arg * 0.0254)改变了__new__的自定义实例化类inch继承自float如果同时存在__new__ ,__init__则__new__比__init_... 阅读全文
posted @ 2012-12-04 17:07 践道者 阅读(9656) 评论(0) 推荐(2) 编辑
摘要: #coding=utf8class FlyBehavior(object): def fly(self):passclass QuackBehavior(object): def quack(self):passclass FlyWithWings(FlyBehavior): def fly(self): return '我会飞的...'class FlyNoWay(FlyBehavior): def fly(self): return '我没办法飞...'class Quack1(QuackBehavior): def quack(s... 阅读全文
posted @ 2012-12-04 15:42 践道者 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 增加用户useradd [options] [username]如,增加python用户并指定用户主目录useradd -d /usr/python -m python如果不指定默认用/home/username 目录增加用户口令passwd username如,root 用户为python用户增加口令passwd python 阅读全文
posted @ 2012-12-04 13:48 践道者 阅读(144) 评论(0) 推荐(0) 编辑