189 8069 5689

python中yaml文件怎么使用

这篇文章主要介绍了python中yaml文件怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇python中yaml文件怎么使用文章都会有所收获,下面我们一起来看看吧。

创新互联技术团队10余年来致力于为客户提供网站设计制作、成都网站制作高端网站设计成都全网营销推广、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了上千家网站,包括各类中小企业、企事单位、高校等机构单位。

yaml简单介绍

YAML是一种标记语言,它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件、倾印调试内容、文件大纲。

  • 大小写敏感

  • 使用缩进表示层级关系

  • 缩进不允许使用tab,只允许空格

  • 缩进的空格数不重要,只要相同层级的元素左对齐即可

  • "#"表示注释

yaml数组

yaml语音数组很简单,使用短横线 ‘-" 作为数组的开始标志。

一维数组

import yaml
#三个双引号的作用是字符换行不需要加换行符
y = """
- 111
- 222
- 333
"""
# y等同于y1
y1 = "- 111
- 222
- 333"
config = yaml.safe_load(y)
config

out: [111, 222, 333]

二维数组

二维数组就是按照缩进关系来的,更多维数组道理相同,具体看下面的代码:

import yaml
y = """
-
  - 111
  - 222
  - 333
-
  - 111
  - 222
  - 333
"""
config = yaml.safe_load(y)
config

out : [[111, 222, 333], [111, 222, 333]]

yaml字典

简单字典形式

yaml字典的模式是Key: value 形式,中间使用冒号+空格进行连接

import yaml
y = """
"0": 1
"1": 2
"2": 3
"""
config = yaml.safe_load(y)
config

out: {‘0": 1, ‘1": 2, ‘2": 3}

复杂字典形式

下面的例子中,我们使用一个嵌套字典,就是字典里面的value值又是一个字典

import yaml
y1 = """
object1:
  "key1": 0
  "key2": 1
object2:
  "key1": 0
  "key2": 1  
"""
config = yaml.safe_load(y1)
config

out: {‘object1": {‘key1": 0, ‘key2": 1}, ‘object2": {‘key1": 0, ‘key2": 1}}

yaml 复杂结构 数组里面嵌入字典

import yaml
y1 = """
-
  "key1": 0
  "key2": 1
-
  "key1": 0
  "key2": 1
"""
config = yaml.safe_load(y1)
config

out: [{‘key1": 0, ‘key2": 1}, {‘key1": 0, ‘key2": 1}]

字典里面嵌入数组

import yaml
y1 = """
object1:
  - 111
  - 222
object2:
  - 111
  - 222
"""
config = yaml.safe_load(y1)
config

out : {‘object1": [111, 222], ‘object2": [111, 222]}

yaml读取和写入

YAML.yml文件内容:

python中yaml文件怎么使用

# yaml文件读取
import yaml
with open("YAML.yml","r")as f:
    config = yaml.safe_load(f)
config

out:[0, 111, 222]

# yaml写入文件
config = [1,2,3]
with open("YAML1.yml","w")as f:
    yaml.dump(config,f)

YAML1.yml文件内容:

python中yaml文件怎么使用

关于“python中yaml文件怎么使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“python中yaml文件怎么使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。


本文名称:python中yaml文件怎么使用
URL标题:http://cdxtjz.cn/article/jheded.html

其他资讯