python学习之路——元组类型/字典类型/集合 day6(18/9/18)

元组类型   tuple

什么是元组:元组就是一个不可变的列表

用途:用于存放多个值,当存方的多个值没有更改的需求的情况下最适合用元组

定义方式:在()内用逗号分隔开多个任意类型的值

示例:   t=(1,1.1,‘asd',(1,2,3),['a','b',])

常用的操作+内置方法

1.按索引取值(正向取+反向取):只能取
2.长度 len

3.成员运算in和not In

5.循环

该类型总结:存多个值/有序/不可变/

掌握的方法:index   count

===========================================================================

字典类型  dict

用途:用来存放多个不同种类的值

定义方式:

在{}内用逗号分隔开多个key:value的元素,其中value可以是任意数据类型,而key的功能通常是用来描述value的,所以key通常是字符串类型,但其实key必须是不可变的类型(int\float\str\tuple)

示例:

d={0:'x',1.3:'y','k1':'z',(1,2,3):'aaa'}

常用操作+内置方法
1、按key存取值:可存可取
2、长度len
3、成员运算in和not in
4、删除 del pop popitem
5、键keys(),值values(),键值对items()
6、循环

该类型总结:存多个值/无序/可变

需要掌握的操作:get方法、update方法、fromkeys、setdefault

===========================================================================

集合   set

什么是集合: 在{}内用逗号分隔开多个值,集合的特点:

                        1、每个值必须是不可变类型

                        2、集合无序

                        3、集合内元素不能重复

集合的第一大用途:关系运算

示例:

pythons={'egon','张铁蛋','李铜蛋','赵银弹','王金蛋','艾里克斯'}
linuxs={'欧德博爱','李铜蛋','艾里克斯','lsb','ysb','wsb'}

1、求同时报名两门课程的学生姓名: 交集
print(pythons & linuxs)
print(pythons.intersection(linuxs))

2 求报名老男孩学校课程的所有学生姓名:并集
print(pythons | linuxs)
print(pythons.union(linuxs))
3 求只报名python课程的学生姓名: 差集
print(pythons - linuxs)
print(pythons.difference(linuxs))
4 求没有同时报名两门课程的学生姓名: 对称差集
print((pythons - linuxs) | (linuxs - pythons))
print(pythons ^ linuxs)
5 父子集:指的是一种包含与被包含的关系
s1={1,2,3}
s2={1,2}
print(s1 >= s2)
print(s1.issuperset(s2))
print(s2.issubset(s1))
情况一:
print(s1 > s2) #>号代表s1是包含s2的,称之为s1为s2的父集
print(s2 < s1)

情况二:
s1={1,2,3}
s2={1,2,3}
print(s1 == s2) #s1如果等于s2,也可以称为s1是s2的父集合

综上:
s1 >= s2 就可以称为s1是s2的父集

集合的第二大用途:去重
集合去重的局限性:
1. 会打乱原值的顺序
2. 只能针对不可变的值去重

该类型总结:存多个值、无序、set可变

需要掌握的操作:update、remove、add、discard、isdisjoint

猜你喜欢

转载自www.cnblogs.com/unbrokenlin/p/9670875.html
今日推荐