dump\load  和 dumps\loads 的区别与联系

"""
Python3 JSON模块的使用
参考链接:https://docs.python.org/3/library/json.html
这里只是介绍最常用的dump、dumps和load、loads
""" import json # 自定义了一个简单的数据(Python中的字典类型),要想Python中的字典能够被序列化到json文件中请使用双引号!双引号!双引号!
data_obj = {
"北京市": {
"朝阳区": ["三里屯", "望京", "国贸"],
"海淀区": ["五道口", "学院路", "后厂村"],
"东城区": ["东直门", "崇文门", "王府井"],
},
"上海市": {
"静安区": [],
"黄浦区": [],
"虹口区": [],
}
} # ---------------------------------------------------分割线------------------------------------------------------------ """
dumps:序列化一个对象
sort_keys:根据key排序
indent:以4个空格缩进,输出阅读友好型
ensure_ascii: 可以序列化非ascii码(中文等) """
s_dumps = json.dumps(data_obj, sort_keys=True, indent=4, ensure_ascii=False)
print(s_dumps) # ---------------------------------------------------分割线------------------------------------------------------------ """
dump:将一个对象序列化存入文件
dump()的第一个参数是要序列化的对象,第二个参数是打开的文件句柄
注意打开文件时加上以UTF-8编码打开 * 运行此文件之后在统计目录下会有一个data.json文件,打开之后就可以看到json类型的文件应该是怎样定义的 """
with open("data.json", "w", encoding="UTF-8") as f_dump:
s_dump = json.dump(data_obj, f_dump, ensure_ascii=False)
print(s_dump) # ---------------------------------------------------分割线------------------------------------------------------------ """
load:从一个打开的文件句柄加载数据
注意打开文件的编码 """
with open("data.json", "r", encoding="UTF-8") as f_load:
r_load = json.load(f_load)
print(r_load) # ---------------------------------------------------分割线------------------------------------------------------------ """
loads: 从一个对象加载数据 """
r_loads = json.loads(s_dumps)
print(r_loads) arg = '{"bakend": "www.oldboy.org", "record": {"server": "100.1.7.9", "weight": 20, "maxconn": 30}}' a = json.loads(input('请输入添加的数据:'),encoding='utf-8')
print(a)

dump/load 和 dumps/loads

Python_Tips_dump\load 和 dumps\loads 的区别与联系的更多相关文章

  1. json.dump和json.dumps区别,json.load和json.loads的区别

    dumps是将python类型(list,dict等)转化成str格式,loads是将str转化成python类型(list,dict等). dump和load也是类似的功能,只是与文件操作结合起来了 ...

  2. python json.dumps中ensure_ascii的使用,load与loads的区别

    json模块最常用的两个功能: 一:json.dumps(),用于将dict拆分成str格式,称为序列化,注意序列化后,虽然print出来仍然显示的字典的样子,但是此时已经是str类型了. 其中,有时 ...

  3. json.dumps 和 json.dump的区别,load和loads的区别

    json.dumps 和 json.dump的区别,load和loads的区别

  4. Session中load/get方法的详细区别

    Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象.其区别在于: 如果未能发现符合条件的记录,get方法返回null,而load方法会抛出一个O ...

  5. $(document).ready() 、 $('#id').load() 、window.onload 的区别

    今天做项目的时候遇到一个问题,结果死在了$(document).ready(). $('#id').load() .window.onload的区别上.然后,就整理一下,这三者的区别. 参考文章:ht ...

  6. Hibernate的load和get方法的区别

    这次我们聊一下Hibernate3.2 Session加载数据时get和load方法的区别,我总结的如下: 1. 对于get方法,hibernate会确认一下该id对应的数据是否存在,首先在sessi ...

  7. dump、load和dumps、loads的区别

    dump: 将dict(字典)转换为str(字符串),并写入json文件中. load: 用于从json文件中读取数据 运行结果: dumps: 将dict(字典)转换为str(字符串). 运行结果: ...

  8. python中json.load()、json.loads()、json.dump()、json.dumps()的区别

    json.load()从文件中读取json字符串 json.loads()将json字符串转换为字典类型 json.dumps()将python中的字典类型转换为字符串类型 json.dump()将j ...

  9. python学习笔记:json与字典的转换(dump 和dumps load和loads的区别)

    1. json序列化(字典转成字符串)方法: dumps:无文件操作            dump:序列化+写入文件 2. json反序列化(字符串转成字典)方法: loads:无文件操作     ...

随机推荐

  1. filebeat- 配置

    wget https://mirrors.huaweicloud.com/filebeat/7.9.1/filebeat-7.9.1-linux-x86_64.tar.gz tar -zxvf fil ...

  2. spring boot:接口站增加api版本号后的安全增强(spring boot 2.3.3)

    一,接口站增加api版本号后需要做安全保障? 1,如果有接口需要登录后才能访问的, 需要用spring security增加授权 2,接口站需要增加api版本号的检验,必须是系统中定义的版本号才能访问 ...

  3. spring boot:spring security整合jwt实现登录和权限验证(spring boot 2.3.3)

    一,为什么使用jwt? 1,什么是jwt? Json Web Token, 它是JSON风格的轻量级的授权和身份认证规范, 可以实现无状态.分布式的Web应用授权 2,jwt的官网: https:// ...

  4. <img>元素边距问题

    解决方式: 给 img 元素设置成 "块" display:block; 另一种 vertical-align: bottom;

  5. 手写Javaweb服务器

    简单web服务器 回忆socket 创建客服端(在httpClient_1包下) public class Client {    public static void main(String[] a ...

  6. CTF相关

    https://blog.csdn.net/zxl2016/article/details/96482763

  7. vue+uni-app商城实战 | 第一篇:【有来小店】微信小程序快速开发接入Spring Cloud OAuth2认证中心完成授权登录

    一. 前言 本篇通过实战来讲述如何使用uni-app快速进行商城微信小程序的开发以及小程序如何接入后台Spring Cloud微服务. 有来商城 youlai-mall 项目是一套全栈商城系统,技术栈 ...

  8. 变量分割技术、判别学习(discriminative learning method)

    基于模型的优化方法(model-based optimization method): 小波变换.卡尔曼滤波.中值滤波.均值滤波: 优点:对于处理不同的逆问题都非常灵活:缺点:为了更好的效果而采用各种 ...

  9. 想买保时捷的运维李先生学Java性能之 垃圾收集算法

    前言 从原来只知道-Xms.-Xmx是设置内存的,到现在稍微理解了一些堆内存等Java虚拟机的一些知识.明白了技术这一个东西还是得要有输入才能实践,原理与实践要相辅相成,后续把JVM的监控好好总结一下 ...

  10. Kubernetes 搭建 ES 集群(存储使用 local pv)

    一.集群规划 由于当前环境中没有分布式存储,所以只能使用本地 PV 的方式来实现数据持久化. ES 集群的 master 节点至少需要三个,防止脑裂. 由于 master 在配置过程中需要保证主机名固 ...