博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PYTHON-基本数据类型-元祖类型,字典类型,集合类型
阅读量:6701 次
发布时间:2019-06-25

本文共 3052 字,大约阅读时间需要 10 分钟。

内容:     1. 元组     2. 字典     3. 集合 =========================== 元祖类型 什么是元组: 元组就是一个不可变的列表 ======================================基本使用====================================== 1、用途: 用于存放多个值,当存放的多个值只有读的需求没有改的需求时用元组最合适 2、定义方式:在()内用逗号分隔开多个任意类型的值 t=(1,3.1,'aaa',(1,2,3),['a','b']) # t=tuple(...) 3、常用操作+内置的方法 优先掌握的操作: 1、按索引取值(正向取+反向取):只能取,不能改 2、切片(顾头不顾尾,步长) 3、长度 4、成员运算in和not in 5、循环 ======================================该类型总结==================================== 存多个值 有序 不可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash) 掌握的方法 index 查找,找不到会报错 (x.index('a')) count计数 (x.count(''a)) ----------------------------------- 字典类型 ======================================基本使用====================================== 1、用途: 用来存方多个(不同种类的)值 2、定义方式: 在{}内用逗号分隔开多个key:value的元素,其中value可以是任意数据类型,而key的功能通常是用来 描述value的,所以key通常是字符串类型,但其实key必须是不可变的类型(int\float\str\tuple) 3、常用操作+内置的方法 优先掌握的操作: 1、按key存取值:可存可取 2、长度len 3、成员运算in和not in 4、删除#pop 有返回值,popitem随机删除 (x.popitem()) 5、键keys(),值values(),键值对items() print(list(d.keys())) print(list(d.values())) print(list(d.items())) 6、循环 ======================================该类型总结==================================== 存多个值 无序 可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash 需要掌握的操作 get方法 (x.get('a')) update方法,新增和覆盖 (x.update({})) fromkeys:需求是快速新造出一个字典,value的初始值全都为None,而key是来自于一个列表 keys=['name','age','sex'] d={}.fromkeys(keys,None) print(d) setdefault   新key会新增,老key返回原值(x.setdefault('a',1)) --------------------------------------- 集合类型 1. 什么是集合     在{}内用逗号分隔开多个值,集合的特点:             1. 每个值必须是不可变类型             2. 集合无序             3. 集合内元素不能重复 2. 为何要用集合     1. 用于做关系运算     2. 去重 3. 如何用集合 一,集合的第一大用途: 关系运算 pythons={'egon练习','张铁蛋','李铜蛋','赵银弹','王金蛋','艾里克斯'} linuxs={'欧德博爱','李铜蛋','艾里克斯','lsb','ysb','wsb'} 1 求同时报名两门课程的学生姓名:交集 & print(pythons & linuxs) 2 求报名老男孩学校课程的所有学生姓名:并集 | print(pythons | linuxs) 3 求只报名python课程的学生姓名: 差集 - print(pythons - linuxs) #求只报名pythons课程的学生姓名 4 求没有同时报名两门课程的学生姓名: 对称差集 ^ print((pythons - linuxs) | (linuxs - pythons)) print(pythons ^ linuxs) 5 父子集:指的是一种包含与被包含的关系 情况一: s1={1,2,3} s2={1,2} print(s1 > s2) #>号代表s1是包含s2的,称之为s1为s2的父集 情况二: s1={1,2,3} s2={1,2,3} print(s1 == s2) #s1如果等于s2,也可以称为s1是s2的父集合 综上: s1 >= s2 就可以称为s1是s2的父集 二,集合的第二大用途:去重 集合去重的局限性: 1. 会打乱原值的顺序 2. 只能针对不可变的值去重 stus=['egon练习','lxx','lxx','alex','alex','yxx'] new_l=list(set(stus)) print(new_l) old_l=[1,[1,2],[1,2]] print(set(old_l)) 集合里面不能放字典/列表 l=[     {'name':'egon练习','age':18,'sex':'male'},     {'name':'alex','age':73,'sex':'male'},     {'name':'egon练习','age':20,'sex':'female'},     {'name':'egon练习','age':18,'sex':'male'},     {'name':'egon练习','age':18,'sex':'male'}, ] new_l=[] for dic in l:     if dic not in new_l:         new_l.append(dic) print(new_l) 需要掌握的操作: update 更新  (x.update(1)) add 添加 (x.add({1})) pop 随机删除 (x.pop) remove 删除选定的值,如值不存在,会报错 (x.remove) discard 删除选定的元素,如值不存在,不会报错 (x.discard) isdisjoint  判断,两个set没有关联则为True  (x.isdisjoint(y)) ======================================该类型总结==================================== 存多个值 无序 set可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash

转载于:https://www.cnblogs.com/du-jun/p/9662941.html

你可能感兴趣的文章
10.高效分布
查看>>
装饰器概念及运用
查看>>
CCF 201312-4 有趣的数
查看>>
screenX clientX pageX的区别
查看>>
android之自定义广播
查看>>
cAdvisor+InfluxDB+Grafana 监控Docker
查看>>
在 PowerPoint 2016 中嵌入网页
查看>>
C#关键字的使用
查看>>
操作系统常考知识点总结(1)
查看>>
Find Minimum in Rotated Sorted Array II
查看>>
spring 第一天:1015
查看>>
JavaScript 几种简单的table切换
查看>>
DevExpress控件使用经验总结
查看>>
软件包管理 之 fedora-rpmdevtools 工具介绍
查看>>
远程连接mysql数据库,1130问题
查看>>
解决win7的outlook打不开的问题
查看>>
Redis配置文件参数说明
查看>>
TSQL 根据表名生成UPDATE SELECT INSERT
查看>>
Java第五次作业--面向对象高级特性(抽象类和接口)
查看>>
Linux进程间通信(四) - 共享内存
查看>>