pyyaml
简介及简单使用pyyaml
模块的安装pip3 install pyyaml
pyyaml
模块的简单使用我们初始化一个yaml
文件如下:
house:
family:
name: Doe
parents:
- John
- Jane
address:
number: 34
street: Main Street
读取 yaml
文件:
import yaml
f = open('example.yml',encoding="utf-8")
x = yaml.load(f)
print(x)
执行结果如下:
{
'house': {
'family': {
'name': 'Doe', 'parents': ['John', 'Jane']}, 'address': {
'number': 34, 'street': 'Main Street'}}}
解析 yaml
文件:
# coding=utf-8
import yaml
project = {
'name': 'Silenthand Olleander',
'race': 'Human',
'traits': ['ONE_HAND', 'ONE_EYE']
}
ret = yaml.dump(project)
print(ret)
print(type(ret))
project = ("a", "b", "c")
ret = yaml.dump(project)
print(ret)
print(type(ret))
project = {
"a": 1,"b": 2}
ret = yaml.dump(project)
print(ret)
print(type(ret))
执行结果如下:
name: Silenthand Olleander
race: Human
traits: [ONE_HAND, ONE_EYE]
<class 'str'>
!!python/tuple [a, b, c]
<class 'str'>
{
a: 1, b: 2}
<class 'str'>
pyyaml
配置不同的工作环境假设我们有两个不同的工作环境,开发环境 dev
和生产环境 prod
,在这两个不同的环境下有部分环境配置是有区别的,我们可以使用 pyyaml
将他们配置在一起,解析时再加以区分。
pyyaml
文件如下所示:
active: dev
dev:
MainQueue: main_queue_dev
prod:
MainQueue: main_queue_prod
其中,active: dev
表示当前的工作环境是 dev
。
pyyaml
文件解析脚本如下所示:
def load_environment():
f = open('params.yaml', encoding='utf-8')
x = yaml.load(f)
if x['active'] == 'dev':
return x['dev']
elif x['active'] == 'prod':
return x['prod']
执行结果:
{
'MainQueue': 'main_queue_dev'}
完整示例代码地址:示例
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/194167.html原文链接:https://javaforall.cn