元组
用途:存放多个值,当存放多个值只有读取没有改的需求适用于元组
定义:在()内用逗号分开多个任意类型
常用操作+内置的方法
1.索引取值(正向+反向)
t=('a','b','c')
print(t[0])
2.切片(顾头不顾尾,步长)
t=('a','b','c')
res=t[0:2]
print(res)
3.长度
t=('a','b','c')
print(len(t))
4.成员运算in和not in
t=(‘a','b','c')
print('a' in t)
5.循环
t=('a','b','c')
for item in t
print(item)
总结:可存多个值,有序,不可变
字典
用途:用来存放多个不同类型的值
定义:用大括号{}内用key:value的元素,用逗号分开,value可以是不同类型的数据,而key可以是不同类型的字符串,key是不可变类型(int/float/str/tuple)
s={name:’alex‘,age:’18‘}
1,按key存取值:可存可取
d={’a':1}
print(d['a'])
2,长度
a={'a':1,'b':2,'c':3}
print(len(a))
3,成员运算in和not
a={‘a’:1.'b':2,'c':3}
print(1 in a)
4,删除
a={'a':1,'b':2,'c':3}
del a['a']
print(a)
res=a.pop('a')
print(res)
5,键key(),值values(),键值对items
a={’a':1,'b':2,'c':3}
print(a,keys())
print(list(a,key()))
print(a,values())
print(list(a, values()))
print(a.items())
print(list(a,item()))
6.循环
for k in a.keys():
print(K)
for v in a values():
print(v)
for k,v in d .items():
print(k,v)
需要掌握的操作
d={’name‘:‘egon’,'age':18,'sex':'male'}
get的方法
v=d.get['name']
print(v)
和d['name']的取值不同是,不确定想取得值在不在字典可以用get
update的方法
就是老值变新值
d={‘name’:‘egon’,‘age“:18,’sex‘:'male",'hobbies':[1,2,3]}
d.update({'x':1,'name':"EGOM'})
print(d)
fromkeys:快速早出一个字典,value的初始值都为None
keys=['name','age','sex']
d={}
for k in keys:
d[k]=None
d={}.fromkeys(keys,None)
print(d)
setdefault
按照默认的操作形式
d['x']=111 #key存在则是修改
d['Z']=111#key不存在则新增
总结:可存多个值,无序,可变
集合
什么是集合:在{}内用逗号分开多个值
特点:
1,每个值必须是不可变型
2,集合无序
3,集合内元素不能重复
为何要用:
1.用于做关系运算
2.去重
集合第一大用处:关系运算
python={’a',‘b',’c',‘d’,‘e’}
linuxs={‘1’,‘2’,‘3’,’a',‘b'}
1.交集
print(python & linuxs)
2.并集
print(python | linuxs)
3.差集
print(python-linuxs)
print(linuxs-python)
4对称差集
print(python ^ linuxs)
5.父子集
s1={1,2,3}
s2={1,2}
print(s1>=s2)
print(s1.issuperst(s2))
print(s2.issuberset(s1))
情况一;s1包含s2的称之为s1为s2的父集
情况二;>如果等于s2也可以成为s1是s2的父集
综上:s1>=s2就可以称s1是s2的父集
集合的第二大用处:去重
局限性:1.会打乱原值的顺序
2.只能针对不可变的值去重
{'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_1=[]
for dic in 1:
if dic not in new__1
new __l.aooend(dic)
print (new_1)
s1={1,2,3}
s1.update({3,4,5})
print(s1)
print(s1)
print(s1)
print(id(s1))
s1.add(4)
print(s1)
print(id(s1))
s1.discard(4)
s1.remove(4)
print(s1)
print(s1.isdisjoint(s2))