Python复习-17.10.08
来源:互联网 发布:php query 编辑:程序博客网 时间:2024/05/16 15:44
数据类型
字符串
与Java不同,Python 中没有字符的概念,只有字符串
如何使用字符串:
单引号(”)
str = 'str'print(str)
双引号(”“)
str = "str"print(str)
单引号和双引号字符串无区别
三引号(”’ ”’)
str = ''' aaastraaa'''print(str)
三引号括起来的字符串是多行字符串
数字
包括整数、浮点数。
整数
int=20print(int)
浮点数
float=2.3
print(float)
删除对象引用
使用del
a=1b=2c=3del adel b, c#print(a) #删除a变量后,再调用a变量会报错
列表
[]初始化列表
list = [1,1,2,3,5,'sada']print(list)#python可直接打印列表
除了可以通过下标访问单个元素以外,还可以通过”:”访问多个元素
list[:]#返回全部元素list[1:]#返回下标为1的元素开始之后的所有元素list[1:5]#返回下标为1的元素到下标为5元素之间的所有元素(包括1但不包括5)list[:5]#返回第一个元素到下标5之前的所有元素list[:-2]#返回第一个元素到倒数第二个元素之前的所有元素
列表对+和*的操作符与字符串相似。+号用于组合列表,*号用于重复列表
元组(tuple)
Python的元组类似于Java的数组,但是元组的元素不可被修改,使用小括号创建
t = (1,1,2)
虽然元组不可被修改,但是我们可以连接组合两个元组
t1 = ('fasd','fadafs',11)t2 = (1,23,4)t3 = t1+t2
也可以用del 删除元组
字典
与Java中map类似,字典是无序的对象集合,由key/value这样的形式储存,通过key可以取出value
dict = {'key1':v1,'key2':v2}
key必须为唯一字符串,值可以相同。
字典可以正常的增删改,有很多内置的方法和函数可以方便的对字典进行操作。
基本数据类型介绍
迭代器和生成器
迭代器
迭代器就是可以帮助我们不断循环的做某件事情的工具,比如说我们使用for..in…循环一个数组,就是通过迭代器完成的。
在python中,有个__iter__方法,一个类实现它既可进行迭代
class ff: b = 0 def __init__(self,a): self.a = a def __iter__(self): return self def __next__(self): self.b += 1 if self.b>self.a: raise StopIteration return self.b**2for a in ff(3): print(a)
该方法返回一个迭代对象,然后,Python的for循环就会不断调用该迭代对象的next()方法拿到循环的下一个值,直到遇到StopIteration错误时退出循环。
生成器
生成器与迭代器类似,但是生成器不会把结果保存在一个系列中,而是保存生成器的状态,在每次进行迭代时返回一个值,直到遇到StopIteration异常结束。
在Python中,使用了yield的函数就称为生成器。
跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,可以理解为:生成器就是一个迭代器。
生成器和函数的执行流程不一样,函数是顺序执行,遇到return语句或者最后一行函数语句就结束。在调用生成器运行过程中,每次遇到yield时函数会暂停并保存当前所有的运行信息,返回yield值。并在下一次执行next方法时,从当前位置继续运行
sum([i for i in xrange(10000000000)])sum(i for i in xrange(10000000000))
在电脑上运行上面两个表达式,会发现上面那个会占用大量内存导致电脑卡死,而下面那个几乎没有占到多少内存,就是因为迭代器是直接返回一个列表,而生成器只会在需要时调用,且只保存一个状态,所以在很多时候选择生成器是更好的选择。
但是生成器的缺点就是只能遍历一次
- Python复习-17.10.08
- python复习
- python 复习
- python复习
- python复习
- python复习笔记
- Python的复习(上)
- Python复习整理
- Python基础复习
- python 基础复习笔记
- day14 python logging复习
- Python day14 logger复习
- Python快速复习
- 温故而知新-python语法复习
- python复习。知识点小记
- python复习。知识点小记
- Python 基础复习
- python 练习--知识点复习
- JavaScript中数组、函数、事件
- 大学生职业技术规划书
- C
- 将一个浮点数,转换为指定格式的字符串
- SDUT_CTF_WEB题目writeup
- Python复习-17.10.08
- jQuery插件的使用和写法
- CodeForces
- adb循环打印log
- Oracle数据库完整性约束
- SurfaceView原理简述
- 正则表达式总结
- QGIS中的python3和pyqt5问题解决
- Mongodb查询计划的生成