码迷,mamicode.com
首页 > Web开发 > 详细

模块之json,pickle,os,sys,logging

时间:2019-09-12 21:11:24      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:文件的   获取文件的绝对路径   and   err   mat   logging   ctime   mod   pre   

json模块

  1. 序列化: 将python的数据类型存成 json串
  2. 反序列化: 将json串 读成python的数据类型

跨平台

dict/list

dic = {'a':1}

# 内存中转化
data = json.dumps(dic)
data = json.loads(data)

# 文件中转化
with open() as fw:
    json.dump(dic, fw)
with open() as fr:
    data = json.load(fr)

pickle模块

不能跨平台,但是支持python所有数据类型

dic = {'a':1}

# 内存中转化
data = pickle.dumps(dic)
data = pickle.loads(data)

# 文件中转化
with open() as fw:
    pickle.dump(dic, fw)
with open() as fr:
    pickle = json.load(fr)

os模块

用来和操作系统交互

os.path.join()  # 拼接地址
os.path.listdir()  # 列出文件夹内的所有文件
os.path.dirname()  # 获取上一级目录
os.path.abspath()  # 获取文件的绝对路径
os.path.exists()  # 文件是否存在

sys模块

用来和python解释器交互

sys.argv # 用cmd执行python文件的时候获取参数


sys.path # 获取环境变量

logging模块

import logging

# 1. 生成logger对象
logger = logging.getLogger('nick')
logger1 = logging.getLogger('jason')

# 2. 格式
formmater1 = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s -%(module)s:  %(message)s',datefmt='%Y-%m-%d %H:%M:%S %p',)
formmater2 = logging.Formatter('%(asctime)s :  %(message)s',datefmt='%Y-%m-%d %H:%M:%S %p',)
formmater3 = logging.Formatter('%(name)s %(message)s',)

# 3. 打印对象
h1 = logging.FileHandler('h1.log')
sm = logging.StreamHandler()

# 4. 打印对象绑定格式
h1.setFormatter(formmater1)
sm.setFormatter(formmater2)

# 5. logger绑定打印对象
logger.addHandler(h1)
logger.addHandler(sm)

# 6. 设置级别
logger.setLevel(50)

logger.debug('debug')
logger.info('info')
logger.warning('warning')
logger.error('error')
logger.critical('critical')

模块之json,pickle,os,sys,logging

标签:文件的   获取文件的绝对路径   and   err   mat   logging   ctime   mod   pre   

原文地址:https://www.cnblogs.com/shiqizz/p/11515052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!