我的机器学习教程「美团」算法工程师带你入门机器学习   已经开始更新了,欢迎大家订阅~

任何关于算法、编程、AI行业知识或博客内容的问题,可以随时扫码关注公众号「图灵的猫」,加入”学习小组“,沙雕博主在线答疑~此外,公众号内还有更多AI、算法、编程和大数据知识分享,以及免费的SSR节点和学习资料。其他平台(知乎/B站)也是同名「图灵的猫」,不要迷路哦~



一句话,load通过json.load(open('*.json'))这样的格式,从文件句柄中打开文件,加载到Python的变量中,并以字典的格式转换。而loads必须对于Python内存中的序列化对象转换成字符串。

因此,load和loads都是实现“反序列化”,区别在于(以Python为例)。loads针对内存对象,即将Python内置数据序列化为字串。如使用json.dumps序列化的对象d_json=json.dumps({‘a‘:1, ‘b‘:2}),在这里d_json是一个字串‘{"b": 2, "a": 1}‘

d=json.loads(d_json)  #{ b": 2, "a": 1},使用load重新反序列化为dict,load针对文件句柄,如本地有一个json文件a.json则可以d=json.load(open(‘a.json‘))相应的,dump就是将内置类型序列化为json对象后写入文件。

测试:

l1 = '[1,2,3,4]'
d1 = '{"k1":"v1"}'
print(type(l1))
print(type(d1))

输出:

<class 'str'>
<class 'str'>
ret = json.loads(l1)
print(ret,type(ret))
ret = json.loads(d1)
print(ret,type(ret))

输出:


[1, 2, 3, 4] <class 'list'>
{'k1': 'v1'} <class 'dict'>[1, 2, 3, 4] <class 'list'>
{'k1': 'v1'} <class 'dict'>

辨别Python中load和loads的小技巧相关推荐

  1. 辨别 Python 中 load 和 loads 的小技巧

    load 和 loads 都是实现"反序列化",load 通过 json.load(open('*.json')) 这样的格式,从文件句柄中打开文件,加载到Python的变量中,并 ...

  2. python里load什么意思_【python】json中load和loads区别

    相同点 dump 和 dumps 都实现了序列化 load 和 loads 都实现反序列化 变量从内存中变成可存储或传输的过程称之为序列化 序列化是将对象状态转化为可保存或可传输格式的过程. 变量内容 ...

  3. python中template是什么意思啊_Python中Template使用的一个小技巧

    Python中Template是string中的一个类,可以将字符串的格式固定下来,重复利用. from string import Template s = Template("there ...

  4. 内存占用小的手机输入法_华为手机输入法中6个超实用的小技巧,你没用过就太可惜了!...

    阅读本文前,请您先点击上面蓝色字体"财经史"再点击"关注",这样您就可以免费收到我们的最新内容了,每天都会有更新,完全是免费订阅,请放心关注. 想必大家对华为手 ...

  5. php页面开发,PHP网站开发中常用的8个小技巧

    这篇文章主要介绍了PHP网站开发中常用的8个小技巧,本文讲解了命名.使用.PHP判断Form表单是否提交.PHP 获取字符串长度.PHP超全局对象等内容,需要的朋友可以参考下 PHP是一种用于创建动态 ...

  6. java 有趣注释_Java8 中有趣酷炫的小技巧

    https://mp.weixin.qq.com/s/ZlbcfT-fUoVEctSqBeZWcg Java8 中有趣酷炫的小技巧 执行注释 大多数开发人员认为 注释 永远不会在程序中执行,并用于帮助 ...

  7. Java 中代码优化的 30 个小技巧(中)

    11 位运算效率更高 如果你读过 JDK 的源码,比如 ThreadLocal.HashMap 等类,你就会发现,它们的底层都用了位运算. 为什么开发 JDK 的大神们,都喜欢用位运算? 答:因为位运 ...

  8. Java 中代码优化的 30 个小技巧(下)

    21 防止死循环 有些小伙伴看到这个标题,可能会感到有点意外,代码中不是应该避免死循环吗?为啥还是会产生死循环? 殊不知有些死循环是我们自己写的,例如下面这段代码: while(true) {if(c ...

  9. rust原地复活_rust腐蚀游戏新手入门必知小技巧 Rust腐蚀游戏中的12个实用小技巧...

    rust腐蚀游戏新手入门必知小技巧,想必还有很多小伙伴还不太了解,下面小编给大家带来了Rust腐蚀游戏中的12个实用小技巧,一起来看看吧. rust腐蚀游戏新手入门必知小技巧 Rust腐蚀游戏中的12 ...

  10. rust腐蚀网页游戏_Rust腐蚀游戏中的12个实用小技巧

    Rust腐蚀游戏中的12个实用小技巧 2020-08-05作者:网络来源:网络 Rust是一款第一人称生存网络游戏,有点像野外求生,但这款游戏内容则更加丰富.刺激.血腥. 在这款游戏中玩家的第一任务就 ...

最新文章

  1. oracle 数据导出
  2. LeetCode--Excel Sheet Column Number
  3. 创建一个catkin工作空间
  4. 前端学习(548):node的自定义模块
  5. 设置cookies过期时间的几种方法
  6. 从头认识Spring-1.14 SpEl表达式(1)-简单介绍与嵌入值
  7. python 序列类型函数_序列类型可用的内置函数
  8. Filter和interceptor比较
  9. Python PyQt5在Windows平台安装
  10. 直流电机正反转驱动电路板
  11. URL 编码和解码工具
  12. html里 alt属性什么意思,HTML
  13. 利用漏洞溢出掉360安全卫士逆向分析
  14. 菜鸡服务器不支持接力,行业首发!菜鸡新功能游戏接力上线,将开云游戏新赛道...
  15. 基于 Arduino 高精度简易桌面钟(Oled/DS3231)
  16. Win11桌面右键没有记事本,VMware Win11桌面右键没有记事本
  17. uniApp正则表达式校验手机、邮箱
  18. Matlab 数值计算----牛顿迭代法
  19. 概率论实验 02 - | 基于Matlab随机数的产生和特性统计
  20. 现在主流免杀是源码免杀

热门文章

  1. iOS_SN_详解沙河(转载)
  2. 在回传时保持滚动位置
  3. Linux下的iftop命令介绍
  4. Linux操作系统中df和du命令常见用法
  5. C++编程语言中的值传递(pass-by-value)和引用传递(pass-by-reference)介绍
  6. varchar,char,varchar2,mybatis查询无返回
  7. 快速乘 防爆乘 快速幂
  8. DataFrame计算corr()函数计算相关系数时,出现返回值为空或NaN的情况+np.log1p()
  9. MapReduce入门(二)合并小文件
  10. [Linux] 常用Linux命令