核能来袭--模块 2
1.nametuple()
2.os模块
3.sys模块(重点)
4.序列化 (四个函数)
5.pickle(重点)
6.json(重点中的重点)
1.nametuple()
命名元组 -->类似创建了一个类
from collections import nametuple p=nametuple('person',['x','y','z']) # 效果与下面一样 p1=p(10,20,30) class person: # 效果与上面的一样 def __init__(self,x,y,z): self.x=x self.y=y self.z=z
2.os模块
主要是针对操作系统的 ,一般用来操作文件,
os.makedirs()可以一次性创建多级目录
os.makedirs('baby/haha/黄晓明') # 可以一次性创建多级目录
os.mkdir()创建文件,但是上层文件必须存在
os.removedirs() 删除目录级所有的空文件夹
os.removedirs('baby/哈哈/黄晓明') # 删除当前这个目录集中的所有空文件夹
os.rmdir()删除一个文件夹
os.rmdir('baby/哈哈/黄晓明') # 删除指定文件
os.path.dirname()获取到文件的文件夹
# os.path 与路径有关的内容 print(os.path.abspath('文件名')) #把相对路径改为绝对路径 print(os.path.split(r'文件路径')) print(os.path.dirname(r'文件路径')) print(os.path.basename(r'文件路径')) print(os.path.exists(r'路径'))判断路径是否存在?
os.system('dir') 查看目录
3.sys模块(重点)
主要针对的是python解释器中的东西
sys.path(重点中的重点) 模块的查找路径
4.序列化 (四个函数)
把一个对象打散就叫做序列化,
把拍散的内容整合成对象,反序列化
5.pickle(重点)
import pickle class Exlphant: def __init__(self,name): self.name=name def tiaoxi(self): print(f'{self.name}大象特别喜欢调戏人') e=Explent('宝宝') #把大象序列化 b=pickle.dumps(e) #反序列化 bs=pickle.loads(b) bs.tiaoxi()
1).dumps()把对象序列化成字节
2).loads()把字节反序列化成对象
# 我们写两个大象,我们把它打散写入文件中 e1=Elephant('宝宝') e2=Elephant('宝贝') f=open('大象',mode='wb') pickle.dump(e1,f) # 没有S的这个方法是把对象打散写入到文件,序列化的内容不是给人看的 pickle.dump(e2,f) # 没有S的这个方法是把对象打散写入到文件,序列化的内容不是给人看的 # 方法1 #尝试读这个文件 f=open('大象',mode='rb') while 1: try: e=pickle.load(f) e.tiaoxi() except Exception: break # 方法2 # 写大象 e1=Elephant('宝宝') e2=Elephant('宝贝') lst=[e1,e2] f=open('大象',mode='wb') pickle.dump(lst,f) #读大象 f1=open('大象',mode='rb') s=pickle.load(f1) for i in s: i.tiaoxi()
3).dump()把对象序列化写入对象
4).load()把文件中的内容反序列化成对象
6.json(重点中的重点)
#json 其实和python差不多,只是有那么一点点的差距 dic={'name':'吴彦祖','age':20,'hight':178} json.dumps(dic,ensure_ascii=False)# json处理中文的问题,在里面加一个ensure_ascii=False #含义是否确认ascii码 f=open('baby.json',mode='w',encoding='utf-8') json.dump(dic,f,ensure_ascii=False) f1=open('baby.json',mode='r',encoding='utf-8') print ( json.load(f1) )
json可以认为是python中的字典,有一点点的不一样
Python : True None False
json: true null false
json中也有pickle的四个函数
1.dumps()把对象序列化成json
2.loads() 把json反序列化成对象
3.dump() 把对象写入文件
4.load()把文件中的内容反序列化成对象