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


Posted in Python onAugust 23, 2017

一,元祖(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 文件操作api(文件操作函数)
Aug 28 Python
python用Pygal如何生成漂亮的SVG图像详解
Feb 10 Python
理论讲解python多进程并发编程
Feb 09 Python
Python学习笔记之图片人脸检测识别实例教程
Mar 06 Python
scrapy-redis源码分析之发送POST请求详解
May 15 Python
Python pandas.DataFrame 找出有空值的行
Sep 09 Python
Python按照list dict key进行排序过程解析
Apr 04 Python
Python json格式化打印实现过程解析
Jul 21 Python
图解Python中深浅copy(通俗易懂)
Sep 03 Python
python 爬取百度文库并下载(免费文章限定)
Dec 04 Python
python实现ping命令小程序
Dec 28 Python
OpenCV绘制圆端矩形的示例代码
Aug 30 Python
Python 多线程Threading初学教程
Aug 22 #Python
Python3实现抓取javascript动态生成的html网页功能示例
Aug 22 #Python
Python实现公历(阳历)转农历(阴历)的方法示例
Aug 22 #Python
Python实现的矩阵类实例
Aug 22 #Python
Python实现图片转字符画的示例
Aug 22 #Python
利用aardio给python编写图形界面
Aug 21 #Python
Python实现图片转字符画的示例代码
Aug 21 #Python
You might like
不要轻信 PHP_SELF的安全问题
2009/09/05 PHP
php生成二维码时出现中文乱码的解决方法
2014/12/18 PHP
Yii2使用自带的UploadedFile实现的文件上传
2016/06/20 PHP
windows 2008r2+php5.6.28环境搭建详细过程
2019/06/18 PHP
jQuery动画效果-fadeIn fadeOut淡入浅出示例代码
2013/08/28 Javascript
我的Node.js学习之路(二)NPM模块管理
2014/07/06 Javascript
浅谈JavaScript的事件
2015/02/27 Javascript
纯javascript实现图片延时加载方法
2015/08/21 Javascript
解决jquery无法找到其他父级子集问题的方法
2016/05/10 Javascript
深入理解js数组的sort排序
2016/05/28 Javascript
基于vue的下拉刷新指令和滚动刷新指令
2016/12/23 Javascript
nodejs mysql 实现分页的方法
2017/06/06 NodeJs
vue.js内部自定义指令与全局自定义指令的实现详解(利用directive)
2017/07/11 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
2017/08/19 Javascript
JavaScrip数组删除特定元素的几种方法总结
2017/09/06 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
vue中的scope使用详解
2017/10/29 Javascript
利用Vue2.x开发实现JSON树的方法
2018/01/04 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
详解JavaScript之Array.reduce源码解读
2020/11/01 Javascript
python自动格式化json文件的方法
2015/03/11 Python
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
python绘制中国大陆人口热力图
2018/11/07 Python
Python设计模式之简单工厂模式实例详解
2019/01/22 Python
在django中自定义字段Field详解
2019/12/03 Python
python装饰器相当于函数的调用方式
2019/12/27 Python
Xadmin+rules实现多选行权限方式(级联效果)
2020/04/07 Python
基于PyInstaller各参数的含义说明
2021/03/04 Python
5分钟弄清楚html5的drag and drop(小结)
2019/04/10 HTML / CSS
搞笑爱情保证书
2014/04/29 职场文书
大学生党员自我批评思想汇报
2014/10/10 职场文书
维稳工作承诺书
2015/01/20 职场文书
2016公司年会通知范文
2015/04/25 职场文书
大学生支教感言
2015/08/01 职场文书
初中政教处工作总结
2015/08/12 职场文书
MySQL中优化SQL语句的方法(show status、explain分析服务器状态信息)
2022/04/09 MySQL