一:字典类型
基本使用
1、用途:按照key:value的形式存放多个值
2、定义方式:在{}内用逗号分隔开多个key:value的元素,其中value可以是任意数据类型,而key必须是不可变类型,通常是字符串类型,
d={1:1111,(1,2,3):2222} # d=dict(…)
print(d[(1,2,3)])
key不能重复
d={“k1”:111,“k2”:222,“k3”:333,“k1”:444,“k1”:5555}
print(d)
dict数据类型转换
res=dict([(“k1”,1111),(“k2”,2222),(“k3”,3333)])
print(res)
res=dict(x=111,y=222,z=333)
print(res)
res={}.fromkeys([“name”,“age”,“gender”],None)
print(res)
res={}
print(res,type(res))
3、常用操作+内置的方法
优先掌握的操作:
1、按key存取值:可存可取
d={“k1”:111,“k2”:222,“k3”:333}
d[“k1”]=666
print(d)
d[“k4”]=444444
print(d)
l=[111,222,333]
l[0]=666
print(l)
l[3]=777
2、长度len
d={“k1”:111,“k2”:222,“k3”:333}
print(len(d))
3、成员运算in和not in
d={“k1”:111,“k2”:222,“k3”:333}
print(“k1” in d)
4、删除
d = {“k1”: 111, “k2”: 222, “k3”: 333}
方式一:
del d[“k1”]
print(d)
方式二:
res=d.pop(“k1”)
print(res)
print(d)
5、键keys(),值values(),键值对items()
d = {“k1”: 111, “k2”: 222, “k3”: 333}
6、循环
for k in d.keys():
print(k)
for k in d:
print(k,d[k])
for v in d.values():
print(v)
for k,v in d.items(): # k,v=(‘k1’, 111)
print(k,v)
print(d.keys(),type(d.keys()))
print(d.values())
print(d.items())
7、get
d = {“k1”: 111, “k2”: 222, “k3”: 333}
print(d[“kkkk”])
print(d.get(“kkkk”))
需要掌握的操作
d={“k1”:1111,“k2”:222,“k3”:333}
dic=d.copy()
print(dic)
d.update({“k3”:444,“k5”:5555})
print(d)
res=d.popitem()
print(res)
if “k1” not in d:
d[“k1”]=66666666666666
res=d.setdefault(“k1”,666666666666)
print(d)
print(res)
==该类型总结
存多个值
无序
可变
二集合
基本使用
1、用途:
(1)去重
(2)关系运算
2、定义方式:在{}内用逗号分隔开多个不可变类型
集合特点:
1、元素必须是不可变类型
2、集合内元素无序
3、集合内元素唯一
s={111,111,111,111,111,“aaa”,3.3,(111,222)} # s=set(…)
print(s)
数据类型转换
res=set(“hello”)
print(res)
res=set([111,222,333,111,[1,2,3]])
print(res)
集合的去重
nums=[111,“aaa”,111,111,222,3333,444,[‘x’,‘y’]]
s=set(nums)
nums=list(s)
print(nums)
写代码去重
l=[
{‘name’:‘egon’,‘age’:18,‘sex’:‘male’},
{‘name’:‘alex’,‘age’:73,‘sex’:‘male’},
{‘name’:‘tom’,‘age’:20,‘sex’:‘female’},
{‘name’:‘egon’,‘age’:18,‘sex’:‘male’},
{‘name’:‘egon’,‘age’:18,‘sex’:‘male’},
]
res=[]
for item in l:
if item not in res:
res.append(item)
print(res)
3、常用操作+内置的方法
#优先掌握的操作:
#1、长度len
s={11,222,333}
print(len(s))
#2、成员运算in和not in
print(11 in s)
=====关系运算
pythons=[‘alex’,‘egon’,‘yuanhao’,‘wupeiqi’,‘gangdan’,‘biubiu’]
linuxs=[‘wupeiqi’,‘oldboy’,‘gangdan’]
l=[]
for x in pythons:
if x in linuxs:
# print(x)
l.append(x)
print(l)
pythons={‘alex’,‘egon’,‘yuanhao’,‘wupeiqi’,‘gangdan’,‘biubiu’}
linuxs={‘wupeiqi’,‘oldboy’,‘gangdan’}
#3、|并集:
print(pythons | linuxs)
print(pythons.union(linuxs))
#4、&交集: 共同部分
print(pythons & linuxs)
print(pythons.intersection(linuxs))
pythons=pythons & linuxs
print(pythons)
pythons.intersection_update(linuxs)
print(pythons)
#5、-差集
print(pythons - linuxs)
print(pythons.difference(linuxs))
print(linuxs - pythons)
print(linuxs.difference(pythons))
#6、^对称差集: 取出只报名一门课的学生
res=(pythons - linuxs) | (linuxs - pythons)
res=pythons ^ linuxs
print(res)
print(pythons.symmetric_difference(linuxs))
#7、==
s1={1,2,3}
s2={3,2,1}
print(s1 == s2)
#8、父集:>=,子集:<=
s1={1,2,3,4,5}
s2={3,2,1}
print(s1 >= s2)
print(s1.issuperset(s2))
print(s2 <= s1)
print(s2.issubset(s1))
需要掌握
s={“aaa”,22,3,“bbb”}
s.update({3,4,5})
print(s)
res=s.pop()
print(s)
print(res)
res=s.remove(“bbb”)
print(s)
print(res)
s.discard(“cccccccccc”)
s.remove(“cccccccccc”)
print(s)
s.add(“ccc”)
print(s)
s1={1,2,3}
s2={4,5,6,3}
print(s1.isdisjoint(s2))
==该类型总结
存多个值
无序
可变
s={1,2,3}
print(id(s))
s.add(4)
print(id(s))
三:文件
1.什么是文件
文件是操作系统提供给用户和应用程序存取硬盘的一种机制
2.为何要用文件
永久保存文件
3.如何用文件
应用程序 open()
操作系统 文件
计算机硬件(硬盘
(一)操作文件的步骤
f=open(r"aaa\a.txt",mode=“rt”,encoding=‘utf-8’)
# f的值:文件对象/文件句柄
data=f.read()
# print(data)
# print(f)
f.close() # 回收系统资源
# print(f)
f.read()
(二)with上下文管理
with open(r"aaa\a.txt",mode=“rt”,encoding=‘utf-8’) as f1,
open(r"aaa\b.txt",mode=“rt”,encoding=‘utf-8’) as f2:
f1.read()
f2.read()