IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> python使用yaml文件 -> 正文阅读

[开发工具]python使用yaml文件

使用yaml目的:复杂代码可以实现仅修改yaml文件,重新运行打开yaml文件的python命令后参数就可以更新。不需要在python文件中找需要修改的参数位置。

一、新建yaml文件

yaml文件是一种文件类型,类似于txt文件。先创建一个1.txt文件,然后重命名文件,把后缀名改成为.yaml就可以直接创建yaml文件。如果不显示后缀名,单击我的电脑——查看,选中“文件扩展名”。

二、yaml文件可以放的对象

1、键值对的集合,对应python的字典。

2、数组,对应python的列表。

3、纯量(少用),单个不可再分的值,比如字符串,bool值,整数,浮点数,时间日期等。

三、编辑yaml来存放参数

yaml文件编辑规则:

大小写敏感,yaml文件区分大小写。

使用缩进表示层级关系。

缩进用空格,不能用tab键。

空格个数没有要求,只要相同层级对齐即可。

编辑方法

选择pycharm打开yaml文件

1、创建字典

在打开的yaml文件中输入:

a: 1
b: 2

按ctrl+s保存,用pycharm查看这个字典:

import yaml

with open('./learn.yaml','r',encoding='utf8') as file:#utf8可识别中文
    fff=yaml.safe_load(file)
print(fff)

输出:

注意:yaml文件中的冒号与数字之间必须有一个空格

这样我们就得到了一个字典,名称叫fff,可以执行python中对字典的一切操作,如:

print(fff['a']+fff['b'])#字典

输出:

?

2、创建列表

在yaml文件中输入

- python
- 2
- 9
减号和值中间必须有空格,按ctrl+s保存,用pycharm查看这个字典:

import yaml

with open('./learn.yaml','r',encoding='utf8') as file:#utf8可识别中文
    fff=yaml.safe_load(file)
print(fff)

print(fff[1]+fff[2])#列表

输出:

?3、嵌套

yaml文件中输入:

- name: sun
? age: 18
? a: 2
? b: 3
- name: s
? a: 3
? b: 4

也就是说,整体是一个列表,包含两个元素,每个元素都是字典

在pycharm中使用这个列表:

import yaml

with open('./learn.yaml','r',encoding='utf8') as file:#utf8可识别中文
    fff=yaml.safe_load(file)
print(fff)

print(fff[1])

print(fff[0]['a']+fff[1]['b'])

输出如下:

?4、用---分隔yaml文档

yaml文件中输入

---
name: sun
age: 18
---
name: s
age: 3

yaml文件被读进来之后,需要用for循环输出这两个字典,代码如下:

import yaml

with open('./learn.yaml','r',encoding='utf8') as file:#utf8可识别中文
    fff=yaml.safe_load_all(file)
    for i in fff:
        print(i)

输出如下:

5、注意yaml文件中单双引号的区别

yaml文件如下:

str1: 'Hello\nWorld'
str2: "Hello\nWorld"

单引号中的特殊字符转到python中会被转义,双引号不会被转义,最后输出的是特殊字符

读入代码:

import yaml

with open('./learn.yaml','r',encoding='utf8') as file:#utf8可识别中文
    fff=yaml.safe_load(file)
print(fff)

print(fff['str1'],fff['str2'])

输出如下:

?

?

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-12-16 17:53:15  更:2021-12-16 17:53:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 14:32:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码