pyyaml使用_pam模块

pyyaml使用_pam模块pyyaml模块

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、pyyaml 简介及简单使用

1、pyyaml 模块的安装

pip3 install pyyaml

2、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.net/194167.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 模块***已加载但找不到入口点DllRegisterServer,请确保***为有效的DLL或OCX文件,然后重试[通俗易懂]

    模块***已加载但找不到入口点DllRegisterServer,请确保***为有效的DLL或OCX文件,然后重试[通俗易懂]今天刷机,因为小米要刷第三方rom,所以要降级,格盘的那个软件需要这个dll,,但是没有找个这个,我就拷贝了下放到system32下面,然后还是不行,就直接执行注册,然后就报了这个错,其实很简单如果使用的是32位操作系统:只需把dll文件放到“X:\Windows\system32”(X代表您系统所在目录盘符,如:C:\Windows\system32);如果使用的是64位操

    2022年6月27日
    125
  • 如何制作一个简单的HTML登录页面(附代码)

    如何制作一个简单的HTML登录页面(附代码)几乎每个网站都会有登录页面,那你知道如何写HTML登录页面吗?这篇文章就和大家分享一个HTML简单登录界面的代码,有一定的参考价值,感兴趣的朋友可以看看。实例:制作一个HTML登录页面,包含邮箱,登录密码,立即注册,忘记密码等,代码如下:HTML部分:<divclass=”dowebok”><divclass=”logo”></div><divclass=”form-item”><inputid=”username”t

    2022年6月13日
    33
  • Hive 时间日期处理总结

    Hive 时间日期处理总结

    2021年11月26日
    46
  • mysql基础

    mysql基础mysql基础

    2022年4月24日
    44
  • 不是单组分组函数

    不是单组分组函数问题:一:SELECT tablespace_name, SUM(bytes) freeFROM dba_free_space不是单组分组函数原因: 1、如果程序中使用了分组函数,则有两种情况可以使用:程序中存在group by,并指定了分组条件,这样可以将分组条件一起查询出来改为:  SELECT tablespace_name, SUM(bytes) freeFROM dba_free_spa…

    2022年6月30日
    27
  • ventricular septal defect_three identical strangers

    ventricular septal defect_three identical strangers转一个BLOG,是美国一同行写的关于eXtremeDB的,但作者似乎是个中国人。这是BLOG原文地址:http://www.weiqigao.com/blog/2006/04/25/extremedb_exposed.html…

    2022年10月14日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号