一、什么是ini文件

后缀名.ini 用于存储项目全局配置变量
比如:接口地址 项目地址….输出文件路径

二、ini文件编写格式

[节点]
选项=选项值
注释前面加;
注意:节点不可以重复

三、ini文件读取

  1. import configparser
  2. config=configparser.ConfigParser()
  3. config.read("config.ini",encoding="utf‐8")
  4. # 获取ini文件中所有的节点
  5. sections=config.sections()
  6. # 获取ini文件中某个节点下所有选项
  7. options=config.options(section="database")
  8. # 获取某个节点下某个选项的选项值
  9. value=config.get(section="database",option="username")
  10. # 获取某个节点下的所有选项及选项值 ‐‐‐》元组列表
  11. values=config.items(section="database")
  12. print(sections)
  13. print(options)
  14. print(values)
  15. print(value)

四、ini文件的编辑(写入或者修改)

  1. """
  2. ini文件编辑:
  3. 1、写入一个节点
  4. 2、写入选项及选项值
  5. 3、删除节点
  6. 4、删除选项及选项值
  7. """
  8. # 写入一个节点
  9. new_section="userinfo1"
  10. if new_section not in sections:
  11. config.add_section("userinfo1")
  12. # 给某个节点添加选项及选项值
  13. config.set(section="userinfo1",option="username",value="hefan")
  14. config.set(section="userinfo1",option="passwd",value="hefan")
  15. # file=open("config.ini","w+")
  16. # config.write(file)
  17. # file.close()
  18. with open("config.ini","w+") as file:
  19. config.write(file)
  20. # 删除节点
  21. del_section="userinfo1"
  22. print(sections)
  23. if del_section in sections:
  24. config.remove_section(section=del_section)
  25. with open("config.ini","w+") as file:
  26. config.write(file)
  27. # 删除选项及选项值
  28. config.remove_option(section="userinfo",option="passwd")
  29. with open("config.ini","w+") as file:
  30. config.write(file)

五、yaml文件处理

1、什么是yaml文件

YAML 是一种灵活的数据格式,支持注释、换行符、多行字符串、裸字符等在自动化过程中,我们很多地方都需要使用配置文件来储存数据
比如测试环境,数据库信息、账号信息、日志格式、日志报告名称等。
其中,yaml文件是最常用的配置文件类型之一,相比较ini,conf配置文件来说,它更加简洁,操作更加简单,同时还可以存放不同类型的数据。
后缀名:.yaml .yml

2、yaml支持哪些数据类型

对象、
数组、
纯量 字符串 数值 bool

3、yaml编写格式语法规则

大小写敏感
使用缩进表示层级关系
缩进用空格,相同的层级元素左对齐即可
#表示注释

  1. hello world
  1. username: cn
  2. passwd: 123456
  1. - 1
  2. - 2
  3. - 3
  4. - 4
  1. sucesslogin:
  2. username: xingyao
  3. passwd: 123456
  4. errorlogin:
  5. username: xingyao
  6. passwd: 123456
  7. username: baili
  8. passwd: 1111111

4、yaml文件的读取 反序列化:从文件转换为Python对象

第三方库 PyYAML

  1. import yaml
  2. with open("yaml_5.yml","r") as file:
  3. data= yaml.load(stream=file, Loader=yaml.FullLoader)
  4. print(data)

5、yaml另外一种操作:yaml写入数据

纯量、对象、数组(Python对象) ——-》yaml文件 序列化(持久化)

  1. modules = ["中文", "pytest", "unittest", "requests", "requests"]
  2. with open("modules.yaml", "w+") as file:
  3. yaml.dump(data=modules, stream=file, allow_unicode=True, encoding="utf‐8")