转载--------Python中:self和__init__的含义 + 为何要有self和__init__
摘要:背景 回复:我写的一些Python教程,需要的可以看看,中SongShouJiong的提问: Python中的self,__init__的含义是啥?为何要有self,__init这些东西? 解释之前,先说几句 1.到目前为止,我虽然也已写了不算很少的python的代码,但是,还真的没有太多接触sel
阅读全文
posted @
2017-10-19 10:50
momo8238
阅读(4381)
推荐(0)
类的特殊(高级)成员方法
摘要:1.__doc__ 表示类的描述信息 运行结果: 2. .__init__ 构造方法,通过类创建对象时,自动触发执行。 __del__ 析构方法,当对象在内存中被释放时,自动触发执行 __module__ : 输出当前实例所用的类是从哪个模块导入的 __class__ : 输出当前实例所用的类 3.
阅读全文
posted @
2017-07-31 14:05
momo8238
阅读(157)
推荐(0)
静态方法,类方法,属性方法
摘要:1.静态方法:只是名义上归类管理,实际上在静态方法里访问不了类或实例中的任何属性。相当于类的工具包。不需要 self 参数了。 运行结果: 2.类方法只能访问类变量,不能访问实例变量。 运行结果: 3.属性方法 把一个方法变成一个静态属性。隐藏实现细节。就不能加()调用了。可以给属性方法赋值。 调用
阅读全文
posted @
2017-07-31 11:09
momo8238
阅读(281)
推荐(0)
python——赋值与深浅拷贝-转自Eva_J的文章,谢谢!
摘要:初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值和深浅拷贝~~~ 预备知识一——python的变量及其存储 在详细的了解python中赋值、copy和deepcopy之前,我们还是要花一点时间来了解一下python内存中变量的存储情况。
阅读全文
posted @
2017-07-29 19:49
momo8238
阅读(534)
推荐(0)
经典类与新式类的继承顺序
摘要:经典类与新式类的继承顺序--两种不同的继承策略。 构造函数(初始化)__init__(self): 的继承策略,就是找哪个__init__(self)的问题 当实例本身有__init__(self) 的时候,会先执行自己的)__init__(self) 函数。 当实例本身没有__init__(sel
阅读全文
posted @
2017-07-29 11:33
momo8238
阅读(831)
推荐(0)
类的继承2(多继承,晕啊晕啊晕啊)
摘要:此篇接 类的继承-1,这块听得不是很明白,所以展开帖子记录下细节。 6.多继承的时候,父类是从左到右执行的。class Woman(People,Relation), 先执行People,再执行 Relation 话不多说,先上程序。我的疑惑在于:在定义Relation的时候,没有进行__init初
阅读全文
posted @
2017-07-29 11:03
momo8238
阅读(178)
推荐(0)
类的继承1
摘要:1.子类可以继承父类的方法: 运行结果: 2.在子类中给父类方法增加新功能。 运行结果如下:相当于给父类的方法增加了新功能。 3.子类之间的方法不能相互调用,women是不能调用man下面的smoke方法的。 4.子类中的man可以多传一个参数,同时不要影响women的正常运行。 运行结果 5.多继
阅读全文
posted @
2017-07-28 17:28
momo8238
阅读(174)
推荐(0)
面向对象3-析构函数和私有属性
摘要:1 析构函数:在实例释放,销毁的时候自动执行的。通常用于做一些收尾工作,如关闭一些数据库链接,关闭一些打开的临时文件等。释放内存。 Python的自动回收机制:隔一段时间,Python会扫描内存中那些没有被变量引用的值(有没有门牌号),如果没有被任何一个变量引用的话,就会自动删除。 执行结果: ah
阅读全文
posted @
2017-07-28 16:21
momo8238
阅读(309)
推荐(0)
面向对象2-类变量与实例变量
摘要:1.类变量的用途:大家共用的属性,节省开销。比如大家的国籍都是China, 像这个属性就可以写成是类变量。 当类变量和实例变量中存在一个相同名字的变量时。程序执行的时候,会先在实例本身的内存中去找,找不到的话,再去类的内存中去找。两个占用的是不同的内存。 程序如下:1)有一个类变量n,在r1,r2中
阅读全文
posted @
2017-07-28 14:28
momo8238
面向对象1
摘要:1.类实例化以后,就给实例化的对象开辟了一块新的内存。 当实例化时,通过self.name=name, self.role=role 给变量(name,role)开辟了一块新的内存,同时把 r1 也传进去了,传给了self . 因为每个实例对象的name,role不一样,所以对每个实例对象都需要开辟
阅读全文
posted @
2017-07-28 11:53
momo8238
阅读(103)
推荐(0)
面向对象0
摘要:面向对象介绍 只要是对象,就肯定有属性,就肯定属于某一类。 特性 封装:可以隐藏实现细节,使得代码模块化 继承:可以扩展已存在的代码模块(类)。封装和继承的目的都是为了代码的重用 多态:为了实现接口重用 构造函数 析构函数 私有方法,私有属性 类变量 实例变量
阅读全文
posted @
2017-07-27 14:57
momo8238
阅读(89)
推荐(0)