码迷,mamicode.com
首页 > 其他好文 > 详细

序列化模块和导入模块

时间:2018-09-06 02:30:04      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:dump   类型   open   有一个   字符   直接   div   bsp   句柄   

# 序列化 —— 转向一个字符串数据类型
# 序列 —— 字符串
# 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)

 

序列化模块和导入模块

标签:dump   类型   open   有一个   字符   直接   div   bsp   句柄   

原文地址:https://www.cnblogs.com/hhsh/p/9595596.html

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