摘要: 迭代器 我们已经知道,可以直接作用于for循环的数据类型有以下几种: 一类是集合数据类型,如list、tuple、dict、set、str等; 一类是generator,包括生成器和带yield的generator function。 这些可以直接作用于for循环的对象统称为可迭代对象:Iterab 阅读全文
posted @ 2018-09-06 17:45 混世妖精 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。 所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不 阅读全文
posted @ 2018-09-06 11:20 混世妖精 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 列表生成式 现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],要求你把列表里的每个值加1。 输出 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9][1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 简写为: 这样的写法就叫做列表生成式 只能用于 阅读全文
posted @ 2018-09-06 11:19 混世妖精 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 练习题 一:编写3个函数,每个函数执行的时间是不一样的, 提示:可以使用time.sleep(2),让程序sleep 2s或更多, 二:编写装饰器,为每个函数加上统计运行时间的功能 提示:在函数开始执行时加上start=time.time()就可纪录当前执行的时间戳,函数执行结束后在time.tim 阅读全文
posted @ 2018-09-06 11:04 混世妖精 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 名称空间 又名name space,名称空间就是存放变量名与变量值绑定关系的地方 名称空间共3种,分别如下 locals: 是函数内的名称空间,包括局部变量和形参(locals打印当前所在名称空间里的所有局部变量) globals: 全局变量,函数定义所在模块的名字空间(globals打印脚本所有变 阅读全文
posted @ 2018-09-06 11:02 混世妖精 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 装饰器 在符合软件开发的原则上,给代码加一些功能。 软件开发中的一个原则“开放-封闭”原则,简单来说,它规定已经实现的功能代码不允许被修改,但可以被扩展,即: 封闭:已实现的功能代码块不应该被修改 开放:对现有功能的扩展开放 原程序(假设是一个视频网站的后端开发工程师) 现想对几个板块内容进行收费, 阅读全文
posted @ 2018-09-06 11:01 混世妖精 阅读(112) 评论(0) 推荐(0) 编辑