模块day16课堂小结


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')
优质内容筛选与推荐>>
1、PAT Basic 1023
2、进度条组件JProgressBar
3、阻止 submit 提交 (含 FireFox)
4、Codeforces 724C [坐标][乱搞][模拟]
5、九大排序算法总结


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号