欢迎光临散文网 会员登陆 & 注册

完美解决Pyhon json转yaml,yaml转json中文乱码实现文件存储

2023-02-14 02:36 作者:IFELES  | 我要投稿

完美解决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 json
import yaml
def 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 json
import yaml
def 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/


完美解决Pyhon json转yaml,yaml转json中文乱码实现文件存储的评论 (共 条)

分享到微博请遵守国家法律