python yaml配置文件,读取yaml文件
这篇文章主要介绍了大蟒读写格式文件,yaml是专门用来写配置文件的语言,非常简洁和强大,之前用初始化设置文件的后缀名也能写配置文件,有点类似于数据格式,下面关于大蟒读写格式文件的详细资料,需要的小伙伴可以参考一下
目录
1.关于yaml2.yaml数据结构3.yaml文件格式
1.关于yaml
yaml基本语法规则:
大小写敏感使用缩进表示层级关系缩进时不允许使用标签键,只允许使用空格。缩进的空格数目不重要,只要相同层级的元素左侧对齐即可#表示注释,从这个字符一直到行尾,都会被解析器忽略,这个和大蟒的注释一样
2.yaml数据结构
YAML 支持的数据结构有三种:
对象键值对的集合,又称为映射(映射)/哈希(哈希)/字典(字典)
对象的一组键值对,使用冒号结构表示。
数组一组按次序排列的值,又称为序列(顺序)/列表(列表)
一组连词线开头的行,构成一个数组。
纯量(标量)单个的、不可再分的值
包括字符串,布尔值,整数,浮点数,Null,时间,日期
3.yaml文件格式
授权登录:
数据:
姓名: 18888888883
密码: jnyj123456
网址: https://XXXX-api-XXXX.zje.com/auth/login
页眉:
Accept: */*
接受-编码: gzip,放气,br
接受-语言: zh-CN,zh;q=0.9
连接:保持活动
内容长度: 46
内容类型:应用程序/json
主机dexin-api-test.zje.com :号
原产地https://XXXX-spa-XXX.zje.com :号
推荐人https://XXXX-spa-XXX.zje.com/:号
Sec-Fetch-Dest:空
秒取模式: cors
sec-Fetch-站点:相同站点
用户代理: Mozilla/5.0(Macintosh;英特尔苹果OS X 10 _ 14 _ 6)苹果WebKit/537.36(KHTML
像壁虎)Chrome/98。0 .4758 .80野生动物园/537.36
授权:无记名
sec-ch-ua: 不是a;品牌;v=33
sec-ch-ua-mobile:0000
sec-ch-ua-platform: macOSis
学习产出:
类OpenYaml(对象):
def __init__(self):
自我。文件路径=操作系统。路径。加入(路线(/数据YAML/YAML。YAML’))#拼接读取的文件路径
def open(self,*args):
args[0]:字典名称
args[1]:字段值
读取文件
尝试:
if len(args)==2: #根据传值判断执行内容
用open(self.file_path, r )作为f: #读取格式
Json=f.read() #获取格式
字典=YAML。safe _ load(Json)[args[0]]#提取制定内容
如果关键字()中的args[1]: #判断键是否存在
logs.info(fyaml文件,查找内容成功,内容:{Dict[args[1]]} )
return Dict[args[1]]
else:
打印(f 对应字段{args[1]}不存在.)
logs.info(f 对应字段{args[1]}不存在.)
else:
用open(self.file_path, r )作为f:
Json=f.read()
字典=YAML。safe _ load(Json)[args[0]]
返回字典
e:除外
打印(f 读取格式文件,报错:{e} )
logs.info(f 读取格式文件,报错:{e} )
def Wri_file(self,*args):
:参数args:参数[0]接口字段、args[1]键、args[2]值
:返回:无
把字段写入格式
尝试:
用open(self.file_path,encoding=utf-8 )作为f: #读取文件
data=yaml.load(f.read(),Loader=yaml .满载)#获取读取内容
print(data[args[0]])
如果数据不是无: #判断读取内容是否为空
if str(data[args[0]]): #中的str(data[args[0]][args[1]])判断名字是否存在在词典
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:
打印(写入文件的字段不存在!写入失败.)
else:
logs.info(写入文件的返回值为空!不能写入.)
y:除外
Logs.info(f 未能写入文件:{y} )
if __name__==__main__:
OpenYaml()。Wri_file(headers , Content-Length , 22 )
OpenYaml()。打开(验证登录,数据)
这就是这篇关于Python读写yaml文件的文章。关于Python读写yaml的更多信息,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。