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

[python] dict类型变量写在文件中

在Python中,如果你想要将一个字典变量以具有可读性的格式写入文件,并且指定缩进为2个空格,你可以使用json模块来实现。json模块提供了一种很方便的方法来进行序列化和反序列化Python对象。下面是一个具体的示例:

字典变量以具有可读性的格式写入文件

import json# 假设这是你想要写入文件的字典
data = {'name': '张三','age': 30,'is_student': False,'courses': ['计算机科学', '数据分析']
}# 指定要写入的文件名
filename = 'data.json'# 写入文件
with open(filename, 'w', encoding='utf-8') as f:# 使用json.dump()函数将字典写入文件,指定缩进为2个空格json.dump(data, f, ensure_ascii=False, indent=2)print(f'字典已成功写入到文件 {filename}')

这段代码首先导入了json模块,然后定义了一个字典data,该字典包含了一些键值对。使用open()函数以写入模式('w')打开一个文件,并通过json.dump()函数将字典写入该文件。

json.dump()函数中,ensure_ascii=False参数确保了非ASCII字符(如中文)能够正确地写入文件,而indent=2参数则指定了输出的格式应该有2个空格的缩进,使得最终写入文件的内容具有较好的可读性。

执行上述代码后,你会在当前目录下创建一个名为data.json的文件,文件内容将是格式化后的JSON,类似于:

{"name": "张三","age": 30,"is_student": false,"courses": ["计算机科学","数据分析"]
}

这样,你就成功地将一个Python字典以可读的格式并且缩进为2个空格写入到了一个文件中。

TypeError: Object of type set is not JSON serializable

解决

相关文章:

  • js设计模式:解释器模式
  • day08_分类品牌管理商品规格管理商品管理
  • 前端知识点、技巧、webpack、性能优化(持续更新~)
  • 第二周opencv
  • 【Java JVM】Class 文件的加载
  • Vue+腾讯地图-实现关键词输入提示功能
  • SpringBoot集成flink
  • NineData云原生智能数据管理平台新功能发布|2024年2月版
  • 每日OJ题_斐波那契dp④_力扣91. 解码方法
  • MySQL 空间碎片详解
  • hack the box之Perfection
  • windows | linux | SSH 密钥验证
  • Doris实战——美联物业数仓
  • 数据挖掘:航空公司的客户价值分析
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • Apache的80端口被占用以及访问时报错403
  • C++11: atomic 头文件
  • es6要点
  • Java比较器对数组,集合排序
  • vuex 笔记整理
  • Web标准制定过程
  • XML已死 ?
  • 记录一下第一次使用npm
  • 那些年我们用过的显示性能指标
  • 悄悄地说一个bug
  • 如何优雅地使用 Sublime Text
  • 温故知新之javascript面向对象
  • 项目管理碎碎念系列之一:干系人管理
  • 一起参Ember.js讨论、问答社区。
  • 怎么将电脑中的声音录制成WAV格式
  • 智能合约开发环境搭建及Hello World合约
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ![CDATA[ ]] 是什么东东
  • (22)C#传智:复习,多态虚方法抽象类接口,静态类,String与StringBuilder,集合泛型List与Dictionary,文件类,结构与类的区别
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (二)PySpark3:SparkSQL编程
  • (附源码)ssm航空客运订票系统 毕业设计 141612
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • *上位机的定义
  • ./indexer: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object fil
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .bat批处理出现中文乱码的情况
  • .Mobi域名介绍
  • .NET单元测试
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • :“Failed to access IIS metabase”解决方法
  • [ SNOI 2013 ] Quare
  • [ACTF2020 新生赛]Include
  • [Android]使用Git将项目提交到GitHub
  • [C++]priority_queue的介绍及模拟实现
  • [C++]STL之map
  • [Everyday Mathematics]20150130
  • [IE编程] 了解Urlmon.dll和Wininet.dll