人类的起源-类是从哪里来的-一脸懵逼
摘要:1. python中一切皆对象(实例),运行结果说明:f 是由Foo创建而来的实例;Foo 是由type创建而来的实例 运行结果: 2. 创建类的另外一种方法: 运行结果: 3.含有参数的情况: 运行结果: 4 metaclass--类是怎么创建的. 1) 在实例化的时候,__new__也会执行,而
阅读全文
posted @
2017-07-31 22:44
momo8238
阅读(203)
推荐(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
阅读(532)
推荐(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
阅读(173)
推荐(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
阅读(102)
推荐(0)
面向对象0
摘要:面向对象介绍 只要是对象,就肯定有属性,就肯定属于某一类。 特性 封装:可以隐藏实现细节,使得代码模块化 继承:可以扩展已存在的代码模块(类)。封装和继承的目的都是为了代码的重用 多态:为了实现接口重用 构造函数 析构函数 私有方法,私有属性 类变量 实例变量
阅读全文
posted @
2017-07-27 14:57
momo8238
阅读(89)
推荐(0)
Shutil模块
摘要:shutil -- --High-level file operations 高级的文件操作模块。 os模块提供了对目录或者文件的新建/删除/查看文件属性,还提供了对文件以及目录的路径操作。比如说:绝对路径,父目录…… 但是,os文件的操作还应该包含移动 复制 打包 压缩 解压等操作,这些os模块都
阅读全文
posted @
2017-07-26 21:00
momo8238
阅读(192)
推荐(0)
sys模块
摘要:python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传递参数。 sys.exit([arg]): 程序中间的退出,arg=0为正常退出。 sys.getd
阅读全文
posted @
2017-07-26 14:09
momo8238
阅读(101)
推荐(0)
OS模块
摘要:OS模块是Python标准库中的一个用于访问操作系统功能的模块 python编程时,经常和文件、目录打交道,这就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关。 1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix' 2
阅读全文
posted @
2017-07-26 12:41
momo8238
阅读(175)
推荐(0)
eval函数
摘要:eval 功能:将字符串str当成有效的表达式来求值并返回计算结果。 语法: eval(source[, globals[, locals]]) -> value 参数: source:一个Python表达式或函数compile()返回的代码对象 globals:可选。必须是dictionary l
阅读全文
posted @
2017-07-26 10:17
momo8238
python常用内置模块之xml模块
摘要:XML 指可扩展标记语言(eXtensible Markup Language),XML 被设计用来传输和存储数据。 XML是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀,至今很多传统公司如金
阅读全文
posted @
2017-07-25 14:40
momo8238
模块介绍及导入方法
摘要:1.定义: 模块:用来从逻辑上组织Python代码(变量,函数,类,逻辑),本质就是.py结尾的Python文件。 为了实现一个功能。(文件名:test.py. 对应的模块名:test) 包:用来从逻辑上组织模块的,本质就是一个“目录”(必须带有一个__init__.py文件) 导入包的本质,就是执
阅读全文
posted @
2017-07-24 14:16
momo8238
阅读(379)
推荐(0)
迭代器
摘要:我们已经知道,可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list、tuple、dict、set、str等; 一类是generator,包括生成器和带yield的generator function。 这些可以直接作用于for循环的对象统称为可迭代对象:Iterable。
阅读全文
posted @
2017-07-21 21:55
momo8238
阅读(111)
推荐(0)
装饰器2
摘要:首先需要分清可变对象和不可变对象。整数和字符串都属于不可变对象,当指向不可变对象的变量值改变时,系统是重新创建一个新的不可变对象赋值给变量。list,set,dict这些属于可变对象,当两个变量指向同一个可变对象时改变可变对象内部的值时会反映在两个变量上,看起来就像是指针或引用。 Python函数参
阅读全文
posted @
2017-07-21 11:56
momo8238
阅读(109)
推荐(0)
装饰器1
摘要:装饰器 定义:本质是函数,(用于装饰其他函数),就是为其他函数添加附加功能。 原则:1.不能修改被装饰函数的源代码。 2.不能修改被装饰函数的调用方式。 实现装饰器知识储备: 1.函数即“变量” 2.高阶函数 3.嵌套函数 高阶函数+嵌套函数=》装饰器
阅读全文
posted @
2017-07-21 10:39
momo8238
阅读(97)
推荐(0)
生成器generator
摘要:生成器的特点: 生成器是一个函数,而且函数的参数都会保留。 迭代到下一次的调用时,所使用的参数都是第一次所保留下的,即是说,在整个所有函数调用的参数都是第一次所调用时保留的,而不是新创建的 在Python中,yield就是这样的一个生成器。 每当调用一次迭代器的next函数,生成器函数运行到yiel
阅读全文
posted @
2017-07-20 14:10
momo8238
阅读(157)
推荐(0)
关于编码
摘要:python2.X版本中默认编码方式是ASCII. python3.X中默认的编码方式是unicode ,unicode也可以看中文,只不过是占2个byte python2.X: #-*-coding:gbk-*-
阅读全文
posted @
2017-07-18 14:28
momo8238
阅读(90)
推荐(0)
python 深浅copy的例子
摘要:1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。2. copy.deepcopy 深拷贝 拷贝对象及其子对象一个很好的例子:import copya = [1, 2, 3, 4, ['a', 'b']] #原始对象b = a #赋值,传对象的引用c = copy.copy
阅读全文
posted @
2017-07-16 20:39
momo8238
阅读(183)
推荐(0)
python中深copy,浅copy
摘要:版权声明:本文为博主原创文章,未经博主允许不得转载。 [python] view plain copy print? >>> mylist1 = [1, 2, 3, 4] >>> myl = mylist1 >>> myl [1, 2, 3, 4] >>> mylist1[0] = 5 >>> my
阅读全文
posted @
2017-07-16 20:37
momo8238
阅读(186)
推荐(0)
python中元组与小括号的关系
摘要:在学习Python 的时候。说到有两种数据类型,一种叫 列表,一种叫做元组,可以认为,元组是功能精简的列表。因为它少了列表很多功能。但是又有相识。定义他们的时候,主要是用中括号和小括号之分。 例如:定义一个列表: mylist=["one","two","3333"] 定义一个元组: myzu=("
阅读全文
posted @
2017-07-16 15:34
momo8238
阅读(596)
推荐(0)
python中括号的使用
摘要:1. 列表list是用[ ]包住的以逗号分隔的数据集合 所有对列表的解析均采用[ ],不论是元素引用或取值 [ ]表示空列表 2. 字典由键-值(key-value)对构成,一般可采用{ }表示 取字典中对应键值,则采用 [ ] { }表示空字典 3. 函数调用中的参数传入 采用( ),元组可用 (
阅读全文
posted @
2017-07-16 15:32
momo8238
阅读(1279)
推荐(0)