首页 > 编程语言 > 详细

Python笔记 【无序】 【五】

时间:2019-04-13 10:48:29      阅读:129      评论:0      收藏:0      [点我收藏+]

描述符

将某种特殊类型的类【只要实现了以下或其中一个】的实例指派给另一个类的属性

1.__get__(self,instance,owner)//访问属性,返回属性的值

2.__set__(self,instance,value)//将在属性分配【即赋值】中调用,不返回任何内容

3.__delete__selfinstance//控制删除操作,不反回任何内容

技术分享图片

重写property

技术分享图片

Del ---delete

练习

 技术分享图片

技术分享图片

定制序列【定制容器】 容器---序列【字符串,元组,列表】+映射类型【字典】

 技术分享图片

技术分享图片

技术分享图片

练习  不可变类型 记录每个元素的访问次数

技术分享图片

*args表示参数可变数量

self.values = [x for x in args]    //列表推导式的形式,把参数放到列表values

接着第二行为字典的初始化操作,键值对---数值-访问次数【全化为0】的形式

 

 

 

 

 

迭代器

【提供迭代方法的容器称为迭代器】 ---as字典,字符串,元组

 

常利用for循环!

for i in “xxxxx”:

Print(i)

迭代器内置函数:

iter(xxx)   容器对象调用iter()得到迭代器

nextxxx返回下一个值,没有值可以返回了,python就抛出StopIteration的异常

 

string = "ssada"

a = iter(string)

 技术分享图片

迭代器的魔法方法:

__iter__()

__next__()

技术分享图片

生成器【特殊的函数,可终端、暂停可暂时交还控制权】

 技术分享图片

技术分享图片

生成器【特殊的迭代器,是他的一个实现】

函数中有yield语句,此函数被定义为生成器

 

斐波那契数列:

技术分享图片

列表推导式:

技术分享图片

字典推导式:

技术分享图片

集合推导式:

技术分享图片

生成器推导式

 技术分享图片

()括起来的,,,,,,

yield = return //不过有暂停功能

 

模块【更高级的封装】

 技术分享图片

即保存了一个.py的程序文件即是模块

 

导入模块

1.

import xx

xx.yy() ----使用导入模块中的方法

2.

form 模块名 import 函数名

yy()

3.

import 模块名 as  新名字

x.yy() ----使用导入模块中的方法

 

__name____main__、搜索路径和包

 

可以在每个模块后编写测试方法 ---

def test():

    ……

test() //调用

 

防止模块中测试方法在主程序中被使用显示

__name__

‘__main__‘ //主程序中如此显示

xx.__name__

显示模块名‘ //模块中如此显示

技术分享图片

 

搜索路径

 技术分享图片

技术分享图片

import 包名.模块名

 

Python笔记 【无序】 【五】

原文:https://www.cnblogs.com/expedition/p/10700141.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!