[Python 实战] - No.6 List、Tuple,Dict
2017-10-22 10:22
239 查看
一、List
List,也就是我们常说的列表,是python内置的一种数据类型。形如:['Alice','Bob',''Cindy]。
List是有序的集合,也就是说我们可以对列表进行排序。对于列表的具体操作分别为构造,增,删,改,遍历,排序等。
构造List的方法很简单,直接声明一个空的List、然后对该List进行追加元素
我们构造完空的List以后,需要使用append()函数来在列表尾部追加元素,或者使用insert(index,obj)来在指定位置插入元素。List中的元素是可变的,同时由于python是一种动态语言,所以列表中的元素可以不是同一个类型的。
另外要注意,我们可以使用[]索引来更改List中已经存在的某个元素的值(这在Tuple中是不可以的),但是我们不能直接使用[]索引来增加元素。同时,在python中我们是可以使用负数索引的,-1即代表最后一个
我们使用pop(index)来删除元素,默认参数为-1,即删除最后一个元素。
python中的遍历十分的简单,只需要使用for循环即可:
对List、Dict进行排序,Python提供了两个方法
1.用List的成员函数sort进行排序。不返回列表,元列表排序后有序
2.用内置函数sorted进行排序(从2.4开始)返回排序后的有序列表 元列表元素不变
更改 func函数中的返回值,即可实现逆序
在前一章,我们讲到了切片,同样,List和Tuple也都适用于切片
最后,列表可以直接使用列表生成式来简单的生成列表,例如:
1.生成1-10中的奇数列表
2. 生成100以内平方数
3.使用多层表达式生成列表:
二、Tuple
元组可以说是另外一种有序的列表,英文为Tuple,Tuple中的一旦创建了,就不能更改了。但是,如果元组中含有一个列表,该列表的值是可以更改的,但是不可将该列表更改为其他元素。
例如:
元组相对列表比较简单。由于元组的不可更改性,所以元组在构造以后,无法对元组进行追加,删除等操作。元组使用del 来删除整个元组
由于括号也可以表示算数运算的符号,所以当我们声明单一元素元组的时候,我们需要添加“,”来进行区别
列表和元组的转换也很简单,使用tuple(list)来返回一个元组,tuple的遍历和List相同
三、Dict
Dict就是我们常说的键值对数据结构,类似于java中的Map,形如:
由于dict在存储的时候是无序的,所以dict中的索引,不像list和tuple中可以直接获取到元素,而是根据key值获取value值。但是我们可以使用sorted()函数来对dict进行排序,注意这里的排序并没有改变dict的结构,只是按照某种顺序使得dict可以有序的打印出来
对dict的操作也主要有构造,增加,删除,修改,遍历,排序
构造dict有很多种方法,这里主要列举几个常用的:
1. 直接声明一个字典:
2. 声明一个空字典,然后追加:
3. 将两个元组使用 zip连接起来:
4. 使用dict.fromkeys,提供默认键值,如果不提供balue,则默认为None
如果我们在字典中,添加了两个相同键的键值对,只有第二个会被记住。同时,由于字典中的键值是不能改变的,所以字典中的键值不能为列表,可以为元组,数字和字符串
删除字典分为:清空字典元素,删除某个字典条目,和删除字典
使用items()来遍历字典:
dict可以分别对字典中的键排序(返回一个键值的有序列表),值排序(值得有序列表)和键值对排序(键值对按照某个排序方法的有序列表)
键值对排序(按照值排序):
这里使用到了lambda表达式,lambda表达式可以很简单的表达一个函数,冒号前为形参,冒号后为要返回的值。在这里的作用是声明排序的key值
同时,附上sorted函数的声明,一目了然:
P.S.文章不妥之处还望指正
List,也就是我们常说的列表,是python内置的一种数据类型。形如:['Alice','Bob',''Cindy]。
List是有序的集合,也就是说我们可以对列表进行排序。对于列表的具体操作分别为构造,增,删,改,遍历,排序等。
构造List的方法很简单,直接声明一个空的List、然后对该List进行追加元素
我们构造完空的List以后,需要使用append()函数来在列表尾部追加元素,或者使用insert(index,obj)来在指定位置插入元素。List中的元素是可变的,同时由于python是一种动态语言,所以列表中的元素可以不是同一个类型的。
另外要注意,我们可以使用[]索引来更改List中已经存在的某个元素的值(这在Tuple中是不可以的),但是我们不能直接使用[]索引来增加元素。同时,在python中我们是可以使用负数索引的,-1即代表最后一个
我们使用pop(index)来删除元素,默认参数为-1,即删除最后一个元素。
python中的遍历十分的简单,只需要使用for循环即可:
对List、Dict进行排序,Python提供了两个方法
1.用List的成员函数sort进行排序。不返回列表,元列表排序后有序
2.用内置函数sorted进行排序(从2.4开始)返回排序后的有序列表 元列表元素不变
更改 func函数中的返回值,即可实现逆序
在前一章,我们讲到了切片,同样,List和Tuple也都适用于切片
最后,列表可以直接使用列表生成式来简单的生成列表,例如:
1.生成1-10中的奇数列表
2. 生成100以内平方数
3.使用多层表达式生成列表:
二、Tuple
元组可以说是另外一种有序的列表,英文为Tuple,Tuple中的一旦创建了,就不能更改了。但是,如果元组中含有一个列表,该列表的值是可以更改的,但是不可将该列表更改为其他元素。
例如:
元组相对列表比较简单。由于元组的不可更改性,所以元组在构造以后,无法对元组进行追加,删除等操作。元组使用del 来删除整个元组
由于括号也可以表示算数运算的符号,所以当我们声明单一元素元组的时候,我们需要添加“,”来进行区别
列表和元组的转换也很简单,使用tuple(list)来返回一个元组,tuple的遍历和List相同
三、Dict
Dict就是我们常说的键值对数据结构,类似于java中的Map,形如:
由于dict在存储的时候是无序的,所以dict中的索引,不像list和tuple中可以直接获取到元素,而是根据key值获取value值。但是我们可以使用sorted()函数来对dict进行排序,注意这里的排序并没有改变dict的结构,只是按照某种顺序使得dict可以有序的打印出来
对dict的操作也主要有构造,增加,删除,修改,遍历,排序
构造dict有很多种方法,这里主要列举几个常用的:
1. 直接声明一个字典:
2. 声明一个空字典,然后追加:
3. 将两个元组使用 zip连接起来:
4. 使用dict.fromkeys,提供默认键值,如果不提供balue,则默认为None
如果我们在字典中,添加了两个相同键的键值对,只有第二个会被记住。同时,由于字典中的键值是不能改变的,所以字典中的键值不能为列表,可以为元组,数字和字符串
删除字典分为:清空字典元素,删除某个字典条目,和删除字典
使用items()来遍历字典:
dict可以分别对字典中的键排序(返回一个键值的有序列表),值排序(值得有序列表)和键值对排序(键值对按照某个排序方法的有序列表)
键值对排序(按照值排序):
这里使用到了lambda表达式,lambda表达式可以很简单的表达一个函数,冒号前为形参,冒号后为要返回的值。在这里的作用是声明排序的key值
同时,附上sorted函数的声明,一目了然:
P.S.文章不妥之处还望指正
相关文章推荐
- python入门之Python中list,tuple,dict,set辨析
- Python 表list, 元组tuple, 字典dict
- python基础数据结构——列表(list), 元祖(tuple), 字典(dict), 字符串(string), 集合(set) 介绍及相互转换
- PYTHON内置数据类型( list ,tuple ,dict,set)
- python list tuple dict set
- Python:数据结构(list, tuple, Dict & Set)
- python 列表list 元组tuple 字典dict 集合set 介绍
- python 获取list tuple dict中最大和最小元素的操作
- Python(可变/不可变类型,list,tuple,dict,set)
- Python中 list、tuple、dict、set的区别(Python)
- Python教程学习简记1--Python数据类型和变量 字符串和编码 list和tuple 条件判断 循环 dict和set
- Python中list,tuple,dict,set的区别和用法(转)
- python中list/tuple/dict/set的区别
- Python中list、tuple、dict区别
- Python中list,tuple,dict的区别
- python list tuple dict set
- Python基础数据结构(list, str, tuple, dict)
- Python基础数据结构之大循环(for list,set,dict,tuple)
- python 基本类型list、tuple、dict学习
- 【python】list tuple dict set 用法及说明