Python笔记 【无序】 【五】
描述符
将某种特殊类型的类【只要实现了以下或其中一个】的实例指派给另一个类的属性
1.__get__(self,instance,owner)//访问属性,返回属性的值
2.__set__(self,instance,value)//将在属性分配【即赋值】中调用,不返回任何内容
3.__delete__(self,instance)//控制删除操作,不反回任何内容
重写property
Del ---delete
练习
定制序列【定制容器】 容器---序列【字符串,元组,列表】+映射类型【字典】
练习 不可变类型 记录每个元素的访问次数
*args表示参数可变数量
self.values = [x for x in args] //列表推导式的形式,把参数放到列表values中
接着第二行为字典的初始化操作,键值对---数值-访问次数【全化为0】的形式
迭代器
【提供迭代方法的容器称为迭代器】 ---as字典,字符串,元组
常利用for循环!
for i in “xxxxx”:
Print(i)
迭代器内置函数:
iter(xxx) 容器对象调用iter()得到迭代器
next(xxx)返回下一个值,没有值可以返回了,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笔记 【无序】 【五】的更多相关文章
- Python笔记(五):异常处理和数据存储
注:和上一篇有关联 (一) finally 和 输出异常信息 try: the_man = open(r'C:\Users\123456\Desktop\test.txt') ...
- Python笔记·第五章—— 列表(List) 的增删改查及其他方法
一.列表的简介 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[ ]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:li = ...
- devi into python 笔记(五)异常 文件操作 sys os glob模块简单实用
异常: Java异常: try catch块处理异常,throw引发异常. Python异常: try except块处理异常,raise引发异常. 异常如果不主动处理,则会交给Python中的缺省处 ...
- [Python笔记]第五篇:递归
本篇主要内容:递归以及冒泡排序 参考文章:(http://www.cnblogs.com/balian/archive/2011/02/11/1951054.html) 递归的概念 递归的概念很简单, ...
- Python笔记(五)
# -*- coding:utf-8 -*- # 函数 # python中定义函数的规则如下:以def开头,接函数名称和(),传入的参数和变量放在圆括号中间,函数以:起始,并且缩进,return选择性 ...
- Python笔记(十五)_异常处理
try-except语句 try: 被检测代码 except Exception [as reason]: 出现异常后的处理代码 例: try: sum = 1+' f=open('未定义文件.txt ...
- python笔记十五(面向对象及其特性)
一.面向对象: class(类):一类拥有共同属性对象的抽象:定义了这些对象的属性和方法object(对象):是一个类实例化后的实例,类必须经过实例化才可以在程序中调用: 由于之前学习过java,对类 ...
- 【和孩子一起学编程】 python笔记--第五天
关于python2在python3中的改动: https://mp.weixin.qq.com/mp/appmsg/show?__biz=MjM5MDEyMDk4Mw==&appmsgid=1 ...
- python学习第五次笔记
python学习第五次笔记 列表的缺点 1.列表可以存储大量的数据类型,但是如果数据量大的话,他的查询速度比较慢. 2.列表只能按照顺序存储,数据与数据之间关联性不强 数据类型划分 数据类型:可变数据 ...
- python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹
python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...
随机推荐
- Event Recommendation Engine Challenge分步解析第二步
一.请知晓 本文是基于Event Recommendation Engine Challenge分步解析第一步,需要读者先阅读上篇文章解析 二.用户相似度计算 第二步:计算用户相似度信息 由于用到:u ...
- ResourceBundle读取properties配置文件
package cn.rocker.readProperties; import java.util.ResourceBundle; import org.junit.Test; /** * @Cla ...
- linux对4T硬盘进行分区
使用parted工具: yum install parted parted /dev/sdb //选择硬盘 GNUParted 2.3Using /dev/sdbWelcome to GNU Part ...
- 为什么要两次调用encodeURI来解决乱码问题
.encodeURL函数主要是来对URI来做转码,它默认是采用的UTF-8的编码.. UTF-8编码的格式:一个汉字来三个字节构成,每一个字节会转换成16进制的编码,同时添加上%号. 假设页面端输入的 ...
- 9.组合模式(Composite Pattern)
动机(Motivate): 组合模式有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素 ...
- Dubbo服务启动脚本
## /usr/wangfajun/service/user #!/bin/sh ## java env export JAVA_HOME=/usr/java/jdk1..0_79 export JR ...
- Git(查看修改记录)
我们已经成功地添加并提交了一个readme.txt文件,现在,是时候继续工作了,于是,我们继续修改readme.txt文件,改成如下内容: Git is a distributed version c ...
- 【leetcode-69】 x 的平方根
(主要是越界问题) 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: 输入: 4 ...
- C语言memmove()函数: 复制内存内容(可以重叠的内存块)
头文件:#include <string.h> memmove() 用来复制内存内容,其原型为: void * memmove(void *dest, const void *src, s ...
- 分布式配置 SSH 免密登陆
原地址忘记了,暂且记下 一.准备工作 1) 用客户端工具(ssh client或者putty)连接到linux服务器.在root用户下输入命令 vi /etc/hosts,用vi编辑hosts文件,如 ...