python-序列集合及字典

Posted onewish

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-序列集合及字典相关的知识,希望对你有一定的参考价值。

组合数据类型

1.集合类型

集合是多种元素的无序组合,(元素独一性)

集合用大括号{}表示,元素用,分隔。

用set函数建立:

       A=set(“python123”)

       {“p”,”y”,”t”,”h”,”o”,”n”,”1”,”2”,”3”}

集合操作符

集合有四种基础运算方法,并,交,差,补

    S|T 并运算,返回一个新集合,包含在集合S和T中的所有元素

    S&T 交运算,返回一个新集合,包含既在S中又在T中的集合

    S-T 差运算,返回一个新的集合,包含在集合S中但是不在集合T中的元素

    S^T 补运算,返回一个新集合,包含集合S和T中的不相同元素

 

集合有两种关系运算操作

    S<=T或者S<T 关系运算,返回True/False,判断S和T的子集关系

    S>=T或者S>T 关系运算,返回True/False,判断S和T的包含关系

 

集合由四种增强运算操作

    S|=T 更新集合S,包含集合S和T中的所有元素

    S&=T 更新集合S,包含同时在集合S和T中的元素

    S-=T 更新集合S,包含在集合S中,但是不在T中的元素

    S^=T 更新集合S,包含集合S和T中的不相同元素

集合的操作方法

操作方法

描述

S.add(x)

把元素x加到集合S中,就算S中已经有了x也不会报错

S.discard(x)

移除集合S中的元素x,就算S中没有x也不会报错

S.remove(x)

 移除集合S中的元素x,如果S中没有x,则会报错KeyError

S.clear()

清除集合S中的所有元素

S.pop()

从集合中随意返回S的一个值,并更新S,若S为空,则产生KeyError错误

S.copy()

返回集合S的一个副本

len(S)

返回集合S中的元素的数目

x in S

 判断元素x是否包含在集合S中

x not in S

 判断元素x是否不在集合S中

set(x)

 将其他类型的变量x转换为集合类型

 

2.序列类型

具有先后顺序的一组数据,序列中元素可以相同,类型可以不同

序列类型是一个基类类型,字符串,元组,和列表都属于序列类型

序号的定义有两种,正向递增序号和反向递减序号

序列的操作方法

方法

描述

len(S)

返回序列S的长度,即元素的个数

max(S)

返回序列S中的最大值,如果S中的元素类型不同,不可以比较,则会报错

min(S)

返回序列S中的最小值,如果S中的元素类型不同,不可以比较,则会报错

S.index(x)

返回序列S中第一次出现x元素的索引

S.index(x,i,j)

返回序列S从i开始到j位置中第一次出现x元素在序列S中的索引

S.count(x)

返回元素x在序列S中出现的总次数

 

3.列表类型

列表是包含0个或多个对象引用的有序序列,属于序列类型。

可以用list函数及那个元组或者字符串转换成列表:

list(“python”)

[“p”,”y”,”t”,”h”,”o”,”n”]

 

列表的操作

方法

描述

ls[i]=x

把列表索引为i的元素替换为x

ls[i:j:k]=lt

把列表lt替换为ls切片之后的子列表

del ls[i]

删除ls的第i个元素

del ls[i:j:k]

删除列表中用切片方法选中的元素

ls +=lt

更新列表ls,把lt列表增加到ls列表后

ls *=n

更新列表ls,其元素重复n次

ls.append(x)

列表ls新增元素x

ls.clear()

删除列表ls的所有元素

ls.copy()

生成一个新的列表,赋予ls中的所有元素

ls.insert(i,x)

 在列表ls中的第i个位置插入元素x

ls.pop(i)

将列表ls中的第i个元素取出并且删除该元素

ls.remove(x)

将列表ls中出现的第一个x元素删除

ls.reverse(x)

将列表中的元素进行逆向排序

 

4.元组类型

元组一旦被创建就不能被修改

元组用()创建或者用tuple()创建,元素之间用逗号分开

可以使用或者不使用小括号,比如函数返回多个值

元组继承了序列类型所有的操作

5.字典类型及其操作

映射是一种键(索引)和值(数据)的对应关系

键值对:键是数据索引的扩展

字典是键值对的集合,键值之间无序

字典的定义采用大括号{}和dict()创建,键值对用冒号表示,键值对之间用逗号隔开

>>>country={‘中国‘:‘北京‘,‘美国‘:‘华盛顿‘,‘法国‘:‘巴黎‘}

>>>country

      {‘中国‘:‘北京‘,‘美国‘:‘华盛顿‘,‘法国‘:‘巴黎‘}

>>>coutry[‘中国‘]

       ‘北京‘

基本格式:

{<键1>:<值1>,<键2>:<值2>……<键n>:<值n>}

字典类型操作方法

方法

描述

del d[k]

删除字典d中键

k in d

判断键k是否在字典d中,如果在则返回True,否则返回False

k not in d

判断键k是否在字典d中,如果不在则返回True,否则返回False

d.keys()

能够返回字典d中所有的键信息

d.values()

返回字典d中所有的值信息

d.items()

返回字典d中所有键值对的信息

d.get(k,)

键k存在,则返回键k对应的value值,否则返回default

d.pop(k,)

键k存在,则取出键k对应的value值,否则返回default

d.popitem()

随机弹出一个键值对

d.clear()

清空字典d

d.len()

返回字典d中键值对的个数

以上是关于python-序列集合及字典的主要内容,如果未能解决你的问题,请参考以下文章

《流畅的python》学习笔记及书评

python基础python序列--列表元组字典和集合详解

python的序列

Python数据类型:字典类型及常用方法(updatedelpopkeysvaluesitemssort)

python数据类型——列表元组字典集合

Python之路-(列表元组字典集合)