当前位置: 首页 > news >正文

制作企业网站新闻列表页面网页设计网站提供什么服务

制作企业网站新闻列表页面网页设计,网站提供什么服务,漳浦网站制作,v6厂高仿手表网站目录 1、基本概念 2、JSON模块 2.1、dumps() 与 loads() 函数 2.2、dump() 与 load() 函数 2.3、bool 、None 类型的序列化与反序列化 3、pickle模块 3.1、dumps() 与 loads() 函数 3.2、dump() 与 load() 函数 1、基本概念 说明#xff1a;通过文件操作#xff0c;…目录 1、基本概念 2、JSON模块 2.1、dumps() 与 loads() 函数 2.2、dump() 与 load() 函数 2.3、bool 、None 类型的序列化与反序列化 3、pickle模块 3.1、dumps() 与 loads() 函数 3.2、dump() 与 load() 函数 1、基本概念 说明通过文件操作可将字符串写入到一个本地文件但是无法将一个对象如字典列表元组直接写入到一个文件里这是就需要将这个对象进行序列化然后写入文件。序列化把内存中的数据转换为字节序列保存到文件。 反序列化从文件的字节序列恢复到内存中。 类比字符串与 byte 类型之间互相转换常用的 encode() 函数、与 decode() 函数分别代表着编码与解码。 Python中可序列化数据类型 可序列化number、str、list、tuple、dict 字典是最常用的序列化数据类型不可序列化class 、def (函数与实例化对象)、set 是无法进行序列化的 在Python中有两个模块可以实现序列化和非序列化分别是json 和 pickle下面分别说明两者的使用和区别 2、JSON模块 JSON一种轻量级的数据交换标准JSON的本质是字符串。也是一个通用的序列化模块通过它可以完成通用化的序列化与反序列化操作。因为几乎所有的编程语言都有json模块而且他们序列化与反序列化的规则是统一的。 2.1、dumps() 与 loads() 函数 注意这两个函数不能直接和文件交互需要将对象序列化后再写入文件将原数据从文件中读出后再进行反序列化操作。 示例1序列化操作 import json# 定义 整型、字符串、列表、元组、字典 五种数据类型 用于序列化测试 int_test 666 str_test test_string list_test [1, 2, 3] tuple_test (4, 5, 6) dict_test {Name: 林一, Sex: 男, Age: 20}int_test_json json.dumps(int_test) print(int_test_json) # 666str_test_json json.dumps(str_test) print(str_test_json) # test_stringlist_test_json json.dumps(list_test) print(list_test_json) # [1, 2, 3]tuple_test_json json.dumps(tuple_test) print(tuple_test_json) # [4, 5, 6]dict_test_json json.dumps(dict_test) print(dict_test_json) # {Name: \u6797\u4e00, Sex: \u7537, Age: 20} 从执行结果可以看出字典类型的数据类型经过序列化后。字典变成了字符串的同时且字典内的 单引号 变成了 双引号中文也变成了比特类型并且进行了 encode 。 示例2反序列化操作 # 反序列化操作 print(json.loads(int_test_json)) # 666 print(json.loads(str_test_json)) # test_string print(json.loads(list_test_json)) # [1, 2, 3] print(json.loads(tuple_test_json)) # [4, 5, 6] print(json.loads(dict_test_json)) # {Name: 林一, Sex: 男, Age: 20} 注意元组类型经过序列化处理后再通过反序列化还原数据时会变为列表数据类型。 这是因为 元组类型 是 python 语言中特有的数据类型json 作为一个通用格式无法识别元组类型。所以在针对元组类型进行序列化的时候会先将 元组类型 先转为 列表再进行序列化处理同样的在进行反序列化处理时就会将序列化后的 元组类型 又转成了 列表类型 。类型的转换不影响对数据的使用 2.2、dump() 与 load() 函数 作用可以直接和文件交互 示例1序列化 dict_test {Name: hello, Sex: 女, Age: 18} with open(json_test.txt, w) as f:json.dump(dict_test, f) 示例2反序列化 with open(json_test.txt, r) as f:content json.load(f)print(f文件类型是 {type(content)}, 文件内容为 {content}) 2.3、bool 、None 类型的序列化与反序列化 import json print(-------------------序列化----------------------------) print(json.dumps(True)) # true print(json.dumps(False)) # false print(json.dumps(None)) # nullprint(-------------------反序列化----------------------------) print(json.loads(json.dumps(True))) # True print(json.loads(json.dumps(False))) # False print(json.loads(json.dumps(None))) # None 说明从上述运行结果来看bool 类型经过序列化处理后变成了小写的 true、false而 None 类型则变成了 小写的 null 。经过反序列化之后bool、None 类型又被还原成了 python 可读的状态。 注意大多数的编程语言中 bool 类型都是小写的 true、false 。json 作为一个通用的序列化模块也同样遵循着这种规则。(小写的 true、false 依然是字符串类型。 ) 3、pickle模块 说明pickle模块与json模块一样可以进行序列化与反序列化区别在于 pickle 是 Python 内置的序列化模块它只能用于 python 自身来使用而json模块更加通用但pickle模块的性能是要比 json 更好的。所以实际使用根据自身需求选择对应的模块进行使用。 3.1、dumps() 与 loads() 函数 注意区别于 json 模块pickle 模块的 dumps() 函数 返回的是 byte 类型 而 loads() 函数也仅支持 byte 类型的 pickle 序列进行反序列化的操作。 示例1 序列化与反序列化 import pickle# 定义 字符串、元组、字典 三种数据类型 用于序列化测试 print(-------------------序列化----------------------------) str_test test_string tuple_test (4, 5, 6) dict_test {Name: 林一, Sex: 男, Age: 20}str_test_pickle pickle.dumps(str_test) print(str_test_pickle)tuple_test_pickle pickle.dumps(tuple_test) print(tuple_test_pickle)dict_test_pickle pickle.dumps(dict_test) print(dict_test_pickle)print(-------------------反序列化----------------------------) print(pickle.loads(str_test_pickle)) print(pickle.loads(tuple_test_pickle)) print(pickle.loads(dict_test_pickle)) 3.2、dump() 与 load() 函数 作用dump()函数能一个接着一个地将几个对象序列化存储到同一个文件中随后调用load()来以同样的顺序反序列化读出这些对象。 参数protocol是序列化模式默认是0ASCII协议表示以文本的形式进行序列化protocol的值还可以是1和21和2表示以二进制的形式进行序列化。其中1是老式的二进制协议2是新二进制协议。 示例序列化与反序列化 import pickle dict_test {Name: hello, Sex: 女, Age: 18} with open(pickle_test.txt, wb) as f:pickle.dump(dict_test, f, 0)with open(pickle_test.txt, rb) as f:content pickle.load(f)print(f文件类型是 {type(content)}, 文件内容为 {content}) 注意 1、由于写入文件和从文件读出都是以二进制的形式所以读写是的模式必须是wb, rb.2、为避免写入文件的内容乱码在dump()里加上第三个参数设为0(ASCII协议).
http://www.pierceye.com/news/856974/

相关文章:

  • 网站建设柒首先金手指1男孩做网站
  • 葫芦岛市建设局网站网页制作与网站发布
  • 企业网站首页布局尺寸营销网站建设哪家便宜
  • 专题网站建设策划郑州市做网站的公
  • wordpress網頁版天津百度网站排名优化
  • 做网站建设销售工资代做电大网站ui作业
  • DMZ做网站wordpress 小工具 创建
  • 宠物网站建设方案外贸网站建设公司服务
  • 玉林网站建设学校门户网站建设的意义
  • 湖南营销型网站建设 在线磐石网络现在出入河南最新规定
  • 阿里云虚拟主机网站国内十大mcn公司
  • c 做网站起什么作用电商建站系统
  • wordpress 网站 上传微信公众平台直接上传wordpress
  • 北滘高明网站建设电子商城网站建设价格
  • 根据一个网站仿做新网站是什么网站代理公司注册收费
  • 创业给企业做网站开发青岛公司建设网站
  • 银川网站建设联系电话郑州网站建设廴汉狮网络
  • 在兔展上怎么做网站页面高端企业网站建站
  • 网站开发 调试网站做seo推广方案
  • 网站的服务器和空间微网站技术
  • 烟台软件优化网站敦煌网站建设
  • wordpress防抓取wordpress seo h1标签
  • 产品宣传网站模板完整个人网站html
  • 多用户商城网站开发seo搜索是什么
  • 永川网站制作网页设计中好的网站
  • 淮南本地网从化网站建设优化
  • 必要是什么网站山东网站seo
  • 汕头网站快速优化排名wordpress安装流程图
  • 郑州视频网站建设大概多少钱赶集网2022年最新招聘
  • 购物网站怎么做优化wordpress 暖岛 主题