广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python读写yaml文件
  • 188
分享到

Python读写yaml文件

2024-04-02 19:04:59 188人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录1.关于yaml2.yaml数据结构3.yaml文件格式1.关于yaml yaml基本语法规则: 大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格。缩进的空

1.关于yaml

yaml基本语法规则:

  • 大小写敏感
  • 使用缩进表示层级关系
  • 缩进时不允许使用Tab键,只允许使用空格。
  • 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • #表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和python的注释一样

2.yaml数据结构

YAML 支持的数据结构有三种:

  • 对象

键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
对象的一组键值对,使用冒号结构表示。

一组按次序排列的值,又称为序列(sequence) / 列表(list)
一组连词线开头的行,构成一个数组。

单个的、不可再分的值
包括字符串,布尔值,整数,浮点数,Null,时间,日期

3.yaml文件格式

auth.login:
  data:
    name: '18888888883'
    passWord: jnyj123456
  url: https://XXXX-api-XXXX.zje.com/auth/login
headers:
  Accept: '*/*'
  Accept-Encoding: gzip, deflate, br
  Accept-Language: zh-CN,zh;q=0.9
  Connection: keep-alive
  Content-Length: '46'
  Content-type: application/JSON
  Host: dexin-api-test.zje.com
  Origin: Https://XXXX-spa-XXX.zje.com
  Referer: https://XXXX-spa-XXX.zje.com/
  Sec-Fetch-Dest: empty
  Sec-Fetch-Mode: cors
  Sec-Fetch-Site: same-site
  User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWEBKit/537.36 (Khtml,
    like Gecko) Chrome/98.0.4758.80 Safari/537.36
  authorization: Bearer
  sec-ch-ua: '" Not A;Brand";v="33"
  sec-ch-ua-mobile: ?0000
  sec-ch-ua-platfORM: macOSis

学习产出:

class OpenYaml(object):

    def __init__(self):
        self.file_path = os.path.join(route("/DataYaml/yaml.yaml"))  # 拼接读取的文件路径

    def open(self, *args):
        '''
           args[0]: 字典名称
           args[1]: 字段值
           读取文件
        '''
        try:
            if len(args) == 2:  # 根据传值判断执行内容
                with open(self.file_path, "r") as f:  # 读取yaml
                    json = f.read()  # 获取yaml
                    Dict = yaml.safe_load(Json)[args[0]]  # 提取制定内容
                if args[1] in Dict.keys():  # 判断key是否存在
                    logs.info(f"yaml文件,查找内容成功,内容:{Dict[args[1]]}")
                    return Dict[args[1]]
                else:
                    print(f"对应字段{args[1]}不存在...")
                    logs.info(f"对应字段{args[1]}不存在...")
            else:
                with open(self.file_path, "r") as f:
                    Json = f.read()
                    Dict = yaml.safe_load(Json)[args[0]]
                return Dict
        except Exception as e:
            print(f'读取yaml文件,报错:{e}')
            logs.info(f'读取yaml文件,报错:{e}')

    def Wri_file(self, *args):

        '''
        :param args: args[0] 接口字段、args[1] key、 args[2] value
        :return: None
        把字段写入yaml
        '''
        try:
            with open(self.file_path, encoding="utf-8") as f:  # 读取文件
                data = yaml.load(f.read(), Loader=yaml.FullLoader)  # 获取读取内容
            print(data[args[0]])
            if data is not None:  # 判断读取内容是否为空
                if str(data[args[0]][args[1]]) in str(data[args[0]]):  # 判断name是否存在在dict
                    data[args[0]][args[1]] = args[2]
                    with open(self.file_path, 'w', encoding="utf-8") as f:  # 写入
                        yaml.dump(data, stream=f, allow_unicode=True)
                else:
                    print("写入文件的字段不存在!写入失败...")
            else:
                logs.info("写入文件的返回值为空!不能写入...")
        except Exception as y:
            logs.info(f"写入文件失败:{y}")


if __name__ == "__main__":
    OpenYaml().Wri_file("headers", "Content-Length", "22")
    OpenYaml().open("auth.login", "data")

到此这篇关于Python读写yaml文件的文章就介绍到这了,更多相关Python读写yaml内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python读写yaml文件

本文链接: https://www.lsjlt.com/news/143145.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python读写yaml文件
    目录1.关于yaml2.yaml数据结构3.yaml文件格式1.关于yaml yaml基本语法规则: 大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格。缩进的空...
    99+
    2022-11-13
  • Python如何读写yaml文件
    这篇文章主要介绍Python如何读写yaml文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.关于yamlyaml基本语法规则:大小写敏感使用缩进表示层级关系缩进时不允许使用Tab键,只允许使用空格。缩进的空格数...
    99+
    2023-06-29
  • c++读写yaml配置文件
    目录YAML基础语法基本规则三种数据结构map,散列表list,数组scalar,纯量map嵌套mapmap嵌套listlist嵌套listlist嵌套map数据结构嵌套利用yaml...
    99+
    2023-05-14
    c++ 读写yaml配置文件 C++读写yaml文件 C++ yaml配置文件
  • Python怎么使用PyYAML库读写yaml文件
    本篇内容介绍了“Python怎么使用PyYAML库读写yaml文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一,YAML 简介YAML,...
    99+
    2023-06-29
  • Python使用PyYAML库读写yaml文件的方法
    目录一,YAML 简介二,YAML 语法三,安装第三方yaml文件处理库PyYAML四,读取yaml文件1,从yaml中读取字典2,从yaml中读取list3,从yaml中读取元组4...
    99+
    2022-11-10
  • python怎么读取yaml文件
    在Python中,可以使用`yaml`库来读取YAML文件。首先,需要通过`pip`安装`pyyaml`库,可以使用以下命令进行安装...
    99+
    2023-09-25
    python
  • python读取yaml配置文件
    1.yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文件,看了yaml后,发现这个更直观,更方便,有点类似...
    99+
    2023-01-31
    配置文件 python yaml
  • c++怎么读写yaml配置文件
    这篇文章主要介绍“c++怎么读写yaml配置文件”,在日常操作中,相信很多人在c++怎么读写yaml配置文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”c++怎么读写yaml配置文件”的疑惑有所帮助!接下来...
    99+
    2023-07-05
  • Python常用配置文件ini、json、yaml读写总结
    本文参考文章,出于学习目的,写本文。 开发项目时,为了维护一些经常需要变更的数据,比如数据库的连接信息、请求的url、测试数据等,需要将这些数据写入配置文件,将数据和代码分离,只需要...
    99+
    2022-11-12
  • c++开发中如何读写yaml配置文件
    目录c++ 开发中利用yaml-cpp读写yaml配置文件c++ 开发中利用yaml-cpp读写yaml配置文件 1、yaml-cpp 是一个开源库,地址在 github 上,htt...
    99+
    2023-05-14
    c++ yaml配置文件 c++ 读写 yaml配置文件
  • c++开发中怎么读写yaml配置文件
    这篇文章主要讲解了“c++开发中怎么读写yaml配置文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“c++开发中怎么读写yaml配置文件”吧!c++ 开发中利用yaml-cpp读写yaml...
    99+
    2023-07-05
  • python-yml文件读写与xml文件读写
    目录一、python-yml文件读写更新yml的数值二、python-xml文件读写寻找 XML 节点修改 XML 数据建立 XML 结构XPath 搜索XML 排版一、python...
    99+
    2022-11-11
  • C++OpenCV读写XML或YAML文件的方法详解
    目录前言1.如何使用1.1第一步:XML、YAML文件的打开1.2 第二步:进行文件读写操作1.3 第三步:vector(array)和map的输入和输出1.4 第四步:文件关闭2....
    99+
    2022-11-13
  • Python学习之yaml文件的读取详解
    目录yaml 文件的应用场景与格式介绍yaml 文件的应用场景yaml 文件的格式第三方包 - pyyaml读取 yaml 文件的方法yaml文件读取演示案例yaml 文件的应用场景...
    99+
    2022-11-13
  • Python读取和存储yaml文件的方法
             YAML 是 "YAML Ain't a Markup Language"...
    99+
    2022-11-12
  • Python如何实现ini和yaml文件读取
    本文小编为大家详细介绍“Python如何实现ini和yaml文件读取”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python如何实现ini和yaml文件读取”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1. ...
    99+
    2023-07-05
  • python读写文件
    python 文件操作 本文系海特网编程技术斑竹Cute所发表,版权归海特网与Cute所有,转载请保留完整信息 #打开文件和进行写操作 f=open('test.txt','w') f.write('hello')&...
    99+
    2023-01-31
    文件 python
  • Python文件读写
    python文件读写 读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写...
    99+
    2023-01-31
    文件 Python
  • C++读写(CSV,Yaml,二进制)文件的方法详解
    目录介绍1.读写txt文件2.C++读写CSV文件2.1 写入CSV2.2 读取CSV文件(1)2.3 读取CSV文件(2)2.4 用c++读写二进制文件(1)2.5 用c++读写二...
    99+
    2022-11-13
  • Python中yaml文件的读取方法是什么
    这篇文章主要介绍了Python中yaml文件的读取方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中yaml文件的读取方法是什么文章都会有所收获,下面我们一起来看看吧。yaml 文件的应用场...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作