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

yipeiwu_com5年前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实现基于朴素贝叶斯的垃圾分类算法

python实现基于朴素贝叶斯的垃圾分类算法

一、模型方法        本工程采用的模型方法为朴素贝叶斯分类算法,它的核心算法思想基于概率论。我们称之为“朴素”,是因为整个形式化过程只做最原...

python实现月食效果实例代码

python实现月食效果实例代码

我们在学习Python当中的pygame模块时,我们都知道我们可以通过使用 pygame模块实现很多功能性的东西,但是很多人应该不知道怎么通过使用pygame实现月食的效果吧,接下来我就...

tornado 多进程模式解析

本文主要研究的是tornado 多进程模式的相关内容,具体如下。 官方文档的helloworld实例中的启动方法: if __name__ == "__main__": appli...

python自动分箱,计算woe,iv的实例代码

python自动分箱,计算woe,iv的实例代码

笔者之前用R开发评分卡时,需要进行分箱计算woe及iv值,采用的R包是smbinning,它可以自动进行分箱。近期换用python开发, 也想实现自动分箱功能,找到了一个woe包,地址h...

Python实现的企业粉丝抽奖功能示例

Python实现的企业粉丝抽奖功能示例

本文实例讲述了Python实现的企业粉丝抽奖功能。分享给大家供大家参考,具体如下: 一 代码 def scode9(schoice): default_dir = r"lotte...