Python中list、tupe、dic、set的使用小记
2017-10-19 08:20
246 查看
以下内容根据老师课件整理而来,不喜勿喷!
list
list=[元素1,元素2,…元素n] #定义n个元素组成的列表
1.性质
列表也是序列,其使用与字符串十分相似,同样支持负数索引、分片等特性,但列表的元素可修改。
与字符串一样,可使用len获取列表长度,还可使用+和*拼接列表。
2.方法
注意pop()和pop(0)的区别,一个是弹出最后一位,一个是弹出第一位
前者弹出栈顶元素,后者是弹出队列第一个元素,有所区别。
3.列表解析
tupe
tuple=(元素1,元素2,…元素n) #定义n个元素组成的元组
1.性质
元组是一种不可变序列,即创建之后不能再做任何修改。
元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串、数字甚至元组。
元组通常代表一行数据,而元组中的元素代表不同的数据项。
2.方法
3.元组用途
在映射类型中当作键使用
函数的特殊类型参数
作为很多内建函数的返回值
dic
dictionary={key1:value1, key2:value2, …, keyn:valuen)}#创建n个“键—值”对组成的字典
1.性质
字典是Python重要的数据类型,字典是由“键—值”对组成的集合,字典中的“值”通过“键”来引用。
字典也称为关联数组、映射或散列表。
Python字典利用了“散列”方法,使用专门的散列函数完成,即字典中的每个键都被转换为一个数字—散列值。字典中值存储在一个底层列表中,并用散列值作为索引。访问值时,将提供的键转为散列值,再跳到列表的相应位置。
使用“键”来访问字典值效率极高。另外与列表一样,字典也是可以改变的:可以添加、删除或修改“键—值”对。
字典的访问与元组、列表有所不同,元组和列表是通过数字索引获取对应的值,而字典是通过key值获取相应的value值。
2.注意:对于字典的键有两个限制
1字典中的键必须独一无二,即在同一个字典中,任何两个键—值对都不能相同;
2键必须是不可变的。因此,字典键不能是列表、字典。对值没有这两个限制。
3.格式:
value=dict[key]
说明:
字典的添加、删除和修改只需执行一条赋值语句即可,例如:dict[’x’]=’value’
字典没有remove操作。删除字典元素可调用内置函数del()完成。
4.方法
说明:
popitem()返回并删除字典的某个键—值对,具体是哪个预先并不知道,因此仅当不在乎字典元素的顺序时,此函数才适用。
items()、keys()和values()都返回一个特殊对象—视图。视图被链接到原始字典,因此若字典发生变化,视图也将相应地变化。
结果
应用
5.字典的排序
字典的排序可以使用内置函数sorted()实现。
sorted(iterable, key=None, reverse=False) --> new sorted list
此处:
iterable—字典的键-值对
Key—排序关键字:键或值
reverse—升序或降序,True为降序,False为升序,默认升序
6.复制
复制分为深拷贝和浅拷贝,不只限于字典,适用于Python的任何对象。可使用copy模块来实现对象的深拷贝和浅拷贝,
deepcopy()用于深拷贝,copy()用于浅拷贝。
深拷贝能够拷贝对象内部所有数据和引用,引用相当于C语言中指针的概念,Python并不存在指针,但是变量的内存结构中通过引用来维护的。
浅拷贝只是复制数据,并没有复制数据的引用,新的数据和旧的数据使用同一块内存空间。
例如:
字典B浅拷贝字典A的数据,如果字典B的数据发生添加、删除或修改操作,字典A的数据也将发生变化;
相反,如果字典B深拷贝字典A的数据,字典B的数据即使发生变化,也不会影响的字典A。
set
1.性质
在Python中,集合是一系列不重复的元素。集合类似于字典,但只包含键,而没有相关联的值。
在Python中,集合是相对较新的功能,在其还不支持集合时,一般使用字典模拟集合。
集合分两类:可变集合(set)和不可变集合(frozenset)。对于可变集合,可添加和删除元素,而不可变集合一旦创建就不能更改。
与字典一样,集合的元素排列顺序也是不确定的。
2.集合基本功能
包括关系测试和消除重复元素。集合对象还支持 union(联合),intersection(交),difference(差)和 sysmmetric difference(对称差集,即异或)等数学运算。
大括号或 set()函数可以用来创建集合。
注意:想要创建空集合,必须使用 set() 而不是{}。
2.集合比较
3.集合关系运算
小伙伴们,上面的总结是不是很给力?是不是有效复习了一遍?别忘记点赞哦!
list
list=[元素1,元素2,…元素n] #定义n个元素组成的列表
1.性质
列表也是序列,其使用与字符串十分相似,同样支持负数索引、分片等特性,但列表的元素可修改。
与字符串一样,可使用len获取列表长度,还可使用+和*拼接列表。
2.方法
注意pop()和pop(0)的区别,一个是弹出最后一位,一个是弹出第一位
前者弹出栈顶元素,后者是弹出队列第一个元素,有所区别。
3.列表解析
tupe
tuple=(元素1,元素2,…元素n) #定义n个元素组成的元组
1.性质
元组是一种不可变序列,即创建之后不能再做任何修改。
元组由不同的元素组成,每个元素可以存储不同类型的数据,如字符串、数字甚至元组。
元组通常代表一行数据,而元组中的元素代表不同的数据项。
2.方法
3.元组用途
在映射类型中当作键使用
函数的特殊类型参数
作为很多内建函数的返回值
dic
dictionary={key1:value1, key2:value2, …, keyn:valuen)}#创建n个“键—值”对组成的字典
1.性质
字典是Python重要的数据类型,字典是由“键—值”对组成的集合,字典中的“值”通过“键”来引用。
字典也称为关联数组、映射或散列表。
Python字典利用了“散列”方法,使用专门的散列函数完成,即字典中的每个键都被转换为一个数字—散列值。字典中值存储在一个底层列表中,并用散列值作为索引。访问值时,将提供的键转为散列值,再跳到列表的相应位置。
使用“键”来访问字典值效率极高。另外与列表一样,字典也是可以改变的:可以添加、删除或修改“键—值”对。
字典的访问与元组、列表有所不同,元组和列表是通过数字索引获取对应的值,而字典是通过key值获取相应的value值。
2.注意:对于字典的键有两个限制
1字典中的键必须独一无二,即在同一个字典中,任何两个键—值对都不能相同;
2键必须是不可变的。因此,字典键不能是列表、字典。对值没有这两个限制。
3.格式:
value=dict[key]
说明:
字典的添加、删除和修改只需执行一条赋值语句即可,例如:dict[’x’]=’value’
字典没有remove操作。删除字典元素可调用内置函数del()完成。
4.方法
说明:
popitem()返回并删除字典的某个键—值对,具体是哪个预先并不知道,因此仅当不在乎字典元素的顺序时,此函数才适用。
items()、keys()和values()都返回一个特殊对象—视图。视图被链接到原始字典,因此若字典发生变化,视图也将相应地变化。
结果
应用
5.字典的排序
字典的排序可以使用内置函数sorted()实现。
sorted(iterable, key=None, reverse=False) --> new sorted list
此处:
iterable—字典的键-值对
Key—排序关键字:键或值
reverse—升序或降序,True为降序,False为升序,默认升序
6.复制
复制分为深拷贝和浅拷贝,不只限于字典,适用于Python的任何对象。可使用copy模块来实现对象的深拷贝和浅拷贝,
deepcopy()用于深拷贝,copy()用于浅拷贝。
深拷贝能够拷贝对象内部所有数据和引用,引用相当于C语言中指针的概念,Python并不存在指针,但是变量的内存结构中通过引用来维护的。
浅拷贝只是复制数据,并没有复制数据的引用,新的数据和旧的数据使用同一块内存空间。
例如:
字典B浅拷贝字典A的数据,如果字典B的数据发生添加、删除或修改操作,字典A的数据也将发生变化;
相反,如果字典B深拷贝字典A的数据,字典B的数据即使发生变化,也不会影响的字典A。
set
1.性质
在Python中,集合是一系列不重复的元素。集合类似于字典,但只包含键,而没有相关联的值。
在Python中,集合是相对较新的功能,在其还不支持集合时,一般使用字典模拟集合。
集合分两类:可变集合(set)和不可变集合(frozenset)。对于可变集合,可添加和删除元素,而不可变集合一旦创建就不能更改。
与字典一样,集合的元素排列顺序也是不确定的。
2.集合基本功能
包括关系测试和消除重复元素。集合对象还支持 union(联合),intersection(交),difference(差)和 sysmmetric difference(对称差集,即异或)等数学运算。
大括号或 set()函数可以用来创建集合。
注意:想要创建空集合,必须使用 set() 而不是{}。
2.集合比较
3.集合关系运算
小伙伴们,上面的总结是不是很给力?是不是有效复习了一遍?别忘记点赞哦!
相关文章推荐
- Python基础,基本类型(整型,浮点数等)数据结构(List,dic(Map),Set,Tuple),控制语句(if,for,while,continue or break):来自学习资料
- python中使用set去除list中的重复元素
- python list set dic tuple总结及转换
- Python学习随笔四:使用str,dic和set
- Python 使用list实现简单的集合set
- Python中的List,Tuple,Dic,Set
- 廖雪峰python3.6教程笔记3-Python基础之使用list, tuple, dict和set
- Python 使用list实现简单的set
- Python 使用有序list构建简单的set
- python里面的set、list、tuple区别和使用方法
- Python面试题 之 Uniquify a list 不使用set去除一个列表中的重复项,并且保持原有的排列顺序
- 把Python脚本打包成exe文件 ——py2exe使用小记
- Spring学习笔记 关于Bean属性的初始化 - 使用inner bean以及List, Map与Set的初始化
- struts2 jsp页面访问List, set 和<s:iterator>的使用
- python中list(列表)、元组和array的区别-分别什么时候使用?
- 集合 (set) 与列表 (list) 分类: python 2013-01-18 15:22 292人阅读 评论(0) 收藏
- C++中防止STL中迭代器失效——map/set等关联容器——vector/list/deque等序列容器—如何防止迭代器失效—即erase()的使用
- Python list dic tuple string
- 第三章Python解析list,dictionary,set
- 泛型的使用(List,Map,Set)