zoukankan      html  css  js  c++  java
  • 序列化模块和导入模块

    # 序列化 —— 转向一个字符串数据类型
    # 序列 —— 字符串
    # json   数字 字符串 列表 字典 元组
    # pickle
    # 所有的python中的数据类型都可以转化成字符串形式
    # pickle序列化的内容只有python能理解
    # 且部分反序列化依赖python代码
    # shelve
    # 序列化句柄
    # 使用句柄直接操作,非常方便
    
    import json
    dicts = {'name':'huang', 'age': 16, 1: 'a', 2: 2}
    d = json.dumps(dicts)
    print(type(d),d)
    d_json_loads = json.loads(d)          # 反序列化
    print(type(d_json_loads), d_json_loads)
    
    # d = {'name': 'huang', 'age': 6}
    # with open('test.txt','w') as f:
    #     json.dump(d, f)
    #
    # with open('test.txt') as f:
    #     result = json.load(f)
    # print(result,type(result))
    
    # import pickle
    # dic = {'k1':'v1','k2':'v2','k3':'v3'}
    # result = pickle.dumps(dic)
    # print(result)       # 一串二进制内容
    #
    # dic = pickle.loads(result)
    # print(dic)
    
    # import shelve
    # f1 = shelve.open('test.txt')
    # f1['name'] = {'int': 10, 'float': 10.0}
    # f1.close()
    # 导入顺序   内置模块>扩展模块>自定义模块
    # import 模块名
    # from 模块 import 变量名
        # 直接使用 变量名 就可以完成操作
        # 如果本文件中有相同的变量名会发生冲突
    # from 模块名 import *
        # 将模块中的所有变量名都放到内存中
        # 如果本文件中有相同的变量名会发生冲突
    # from 模块名 import * 和 __all__ 是一对
        # 没有这个变量,就会导入所有的名字
        # 如果有all 只导入all列表中的名字
    
    # __name__
    # 在模块中 有一个变量__name__,
    # 当我们直接执行这个模块的时候,__name__ == '__main__'
    # 当我们执行其他模块,在其他模块中引用这个模块的时候,这个模块中的__name__ == '模块的名字'
    
    # 当这个文件被别的模块调用时,如果没有if语句,
    print(__name__)     # 输出__main__
    print(123)
    if __name__ == '__main__':
        print(123)
  • 相关阅读:
    什么是tomcat集群?
    cmd黑客入侵命令大全
    Linix基本命令
    Windows CMD命令大全
    python 函数1
    Python 集合(set)使用
    python 数据字典应用
    python 数据运算
    python 数据类型(元组(不可变列表),字符串
    python 数据类型(列表)学习笔记
  • 原文地址:https://www.cnblogs.com/hhsh/p/9595596.html
Copyright © 2011-2022 走看看