基于python元祖与字典与集合的粗浅认识

yipeiwu_com7年前Python基础

一,元祖(tuple)

1.元祖是不能修改的,通常写成圆括号中的一系列项,位置有序,固定长度

2.实际上元祖支持字符串和列表的一般序列操作,“+”,“*”以及分片操作应用于元祖时会返回新的元祖

print((1,2)+(3,4))>>>>(1,2,3,4)
print((1,2)*4)>>>>(1,2,1,2,1,2,1,2)
T=(1,2,3,4)
print(T【0】,T【1:3】)>>>>(1,(2,3))

3.元祖不提供字符串,列表和字典的方法,入股你相对元祖进行排序,通常先得把它转换成列表才能获得使用排序方法的调用

T=(“z”,"b"."c")
tem= list(T)
tem.sort()
print(tem)>>>> ["b","c","z"]
T=tuple(tem)
print(T) >>>>("b","c","z")

但是元祖内部的列表是可以像往常那样修改的

T=(1,[2,3],4)
T[1].[0] ="ABC"
print(T)>>>>>(1,["ABC",3],4)

二.字典(dict)

1.字典是无序的,即你每次查询的结果数据排序是不一定的,因为它时key-value类型的数据,不需通过下标索引

2.对字典的操作:

D1={} #表示空字典
D2={“spam”:1,"app":2}#两项目字典
D3={"food":{"spam":1,"egg":2}}#嵌套
D2["app"]#通过键进行查找
D3["food"]["spam"]
"egg" in D3 #判断egg是否存在在D3中,存在则返回True
D2.keys()#查询key值
D2.values()#查询value值
D2[key]=44#表示新增或者修改,当字典中不存在这个key则新增,存在则是修改
del D2[key]#删除
D2 = {"egg",1,"app",2}
print(D2["app"])
>>>>>>>2
print(D2)
>>>>>>>{"egg",1,"app",2}
len(D2)
>>>>>>>2#返回的时keys的列表的长度

合并的方法:
D2 = {"egg",1,"app",2}
D3 = {"egg",1,"app",2}
D2.update(D3)
print(D2)
>>>>>>>{"egg",1,"app",2,"egg",1,"app",2}

pop删除的方法:能够删除字典一个键并返回它的值
D2 = {"egg",1,"app",2}
D2.pop(“egg”)
>>>>>>>>1
print(D2)
>>>>>>>>{"app",2}


另一种创建方法:条件是所有的key的值都是一样的
dict.fromkeys(["a","b"],0)
>>>>>>>>>{"a":0,"b":0}

三.集合(set)

集合是一个无序的,不重复的数据重合的。主要作用是用于

(1)去重;把一个列表变成集合,自动去除重复

(2)关系测试;测试两组数据之前的交集,并集等关系

相关操作

s1= set([1,2,3,4,5,6,7])
s2 = set([2,5,4,6,3,9])
print(s1.intersection(s2))#表示取交集
>>>>>>>>{2,4,5,6,3}
print(s1.union(s2))#表示取并集
>>>>>>>>{1,2,3,4,5,6,7,9}
print(s1.difference(s2))#表示差集
>>>>>>>>{7,9}
print(s1.isdisjiont(s2))#表示s与s2是否有交集
>>>>>>>>True
s1.add(10)#添加1个项
s1.update([8,9,10])#添加多个项
s1.remove(1)#删除一项,值为1(指定删除哪个,没有指定会报错)
s1.pop()#随机删除一个数

以上这篇基于python元祖与字典与集合的粗浅认识就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

纯Python开发的nosql数据库CodernityDB介绍和使用实例

纯Python开发的nosql数据库CodernityDB介绍和使用实例

看看这个logo,有些像python的小蛇吧 。这次介绍的数据库codernityDB是纯python开发的。 先前用了下tinyDB这个本地数据库,也在一个api服务中用了下,一开始...

Python利用IPython提高开发效率

Python利用IPython提高开发效率

一、IPython 简介 IPython 是一个交互式的 Python 解释器,而且它更加高效。 它和大多传统工作模式(编辑 -> 编译 -> 运行)不同的是, 它采用的工...

Python中MYSQLdb出现乱码的解决方法

本文实例讲述了Python中MYSQLdb出现乱码的解决方法,分享给大家供大家参考。具体方法如下: 一般来说,在使用mysql最麻烦的问题在于乱码。 查看mysql的编码: 命令:&nb...

python自动截取需要区域,进行图像识别的方法

实例如下所示: import os os.chdir("G:\Python1\Lib\site-packages\pytesser") from pytesser import *...

对Python中for复合语句的使用示例讲解

当Python中用到双重for循环设计的时候我一般会使用循环的嵌套,但是在Python中其实还存在另一种技巧——for复合语句。 简单写一个小程序,用于延时循环嵌套功能如下: #!/...