哔哩哔哩2023-02-14 03:01:21
(资料图)
完美解决Pyhon json转yaml,yaml转json中文乱码实现文件存储
一、安装yaml库
安装pyyaml包
pip install pyyaml
二、新建.yml文件
- taxonomy: 常用推荐 icon: far fa-star links: - title: 公众号平台 logo: 微信公众号.png url: https://mp.weixin.qq.com/ description: 再小的个体也有自己的品牌。 - title: GitHub logo: github.jpg url: https://github.com/
三、yaml转json解决中文乱码实现文件存储
import jsonimport yamldef yml_write_json(): with open('tml.yml', encoding="utf-8") as f: datas = yaml.load(f, Loader=yaml.FullLoader) # 将文件的内容转换为字典形式 json_data = json.dumps(datas, sort_keys=False, indent=5, ensure_ascii=False) # 将字典的内容转换为json格式的字符串,解决中文乱码 with open('test.json', 'w+', encoding='utf-8') as jf: jf.write(json_data)
执行结果如下:
{ "taxonomy": "常用推荐", "icon": "far fa-star", "links": [ { "title": "公众号平台", "logo": "微信公众号.png", "url": "https://mp.weixin.qq.com/", "description": "再小的个体也有自己的品牌。" },
四、json转yaml解决中文乱码实现文件存储
import jsonimport yamldef json_write_yml(): with open('test.json', encoding='utf-8') as fa: datas = json.load(fa) yaml_datas = yaml.dump(datas, indent=5, sort_keys=False, allow_unicode=True) print(yaml_datas) with open('test.yml', 'w+', encoding='utf-8') as fb: fb.write(yaml_datas)
执行结果如下:
- taxonomy: 常用推荐 icon: far fa-star links: - title: 公众号平台 logo: 微信公众号.png url: https://mp.weixin.qq.com/ description: 再小的个体也有自己的品牌。 - title: GitHub logo: github.jpg url: https://github.com/
关键词: 文件存储