字典表的本质是哈希映射,通过键找到值,且是乱序
1.字典表的声明
方法一、d={‘name’:‘zhang’,‘age’:20}
d
Out[7]: {‘name’: ‘zhang’, ‘age’: 20}
方法二:
d=dict(name=‘zhang’,age=20)
d
Out[4]: {‘name’: ‘zhang’, ‘age’: 20}
d[‘name’] //通过键查找值
‘zhang’d.get(‘name’)//通过键查找值
‘zhang’
d[‘name’]=‘Li’ //将字典表的name替换成Li
d
{‘name’: ‘Li’, ‘age’: 20}
d1=dict(par=‘kai’,dev=‘cheng’) //将d1字典表加上d的后面
d.update(d1)
d
{‘name’: ‘Li’, ‘age’: 20, ‘par’: ‘kai’, ‘dev’: ‘cheng’}
d.keys() //只看d中的键值
dict_keys([‘name’, ‘age’, ‘par’, ‘dev’])d.values() //只看d中的值
dict_values([‘Li’, 20, ‘kai’, ‘cheng’])
d.items() //将d转换成元组形式打印
dict_items([(‘name’, ‘Li’), (‘age’, 20), (‘par’, ‘kai’), (‘dev’, ‘cheng’)])
RS=list(d.keys()) //将d中的键值转换成list ,再进行list操作
RS
[‘name’, ‘age’, ‘par’, ‘dev’]
d={1,5,6,7} //全局排序
sorted(d)
[1, 5, 6, 7]
2.元组tuple
x=(40,) //逗号来标识申明的是元组
x
(40,)
t=(1,2,3) //推导
res=[x**3 for x in t]
res
[1, 8, 27]
t.index(3) //3在t中的下标索引是几
2
f=open(‘hello.txt’,‘w+’) // 打开可读可写模式,创建文件名 hello.txt
f.write(‘sorry’) ///往文件中写入sorry
5f.close() //必须要关闭文件,系统才能够读入硬盘中
f=open(‘hello.txt’,‘r’) // 关闭后打开,才能够读取,要不然直接读取为报ValueError: I/O operation on closed file.错误
f.read()
‘sorry’
with open(‘hello.txt’,‘w+’) as f: //使用with的方法就不用每次写入后 都close()关闭了
… f.write(‘happy’)
pickle模块将任意一个python对象转换成一系统字节的这个操作过程叫做串行化对象;
import pickle
d={‘a’:1,‘b’:2}
f=open(‘hello.txt’,‘wb+’)
pickle.dump(d,f)
f.close()
open(‘hello.txt’,‘rb’).read()
b’\x80\x03}q\x00(X\x01\x00\x00\x00aq\x01K\x01X\x01\x00\x00\x00bq\x02K\x02u.’