摘要:字符串布爾值整數浮點數時間日期類型套類型如下類型前面加上符號,且數字讀出來的是或者純量純量最基本不可再分的值。打印結果也允許另一種寫法,將所有鍵值對寫成一個行內對象打印結果四讀取文件內容示例五寫入文件內容示例
yaml,Yet Another Markup Language,另一種標記語言。專門用來寫配置文件的語言,簡潔、強大。
命令:pip install pyyaml
二、基本語法規則大小寫敏感。
與Python類似,使用縮進來表示層級關系。
注意,縮進時不允許使用
??(ps我嘗試使用了
縮進的空格數目沒關系,只需保證相同層級的元素左對齊
注釋使用“#”,注釋掉一行
三、 yaml支持的數據結構對象:鍵值對的集合,又稱為映射(mapping)/ 哈希(hashes) / 字典(dictionary)
數組:一組按次序排列的值,又稱為序列(sequence) / 列表(list)
純量(scalars):單個的、不可再分的值。字符串、布爾值、整數、浮點數、Null、時間、日期
(1)dict類型key:value
user: admin pwd: 111111(2) dict套dict類型
如下:
info1: user:admin pwd:111111(3)list類型
前面加上‘-’符號,且數字讀出來的是int 或者float
-admin: 111111 -host : 222222(4) 純量
純量:最基本、不可再分的值。
1、數值直接以字面量的形式表示
number: 12.30 # {"number": 12.3}
2、布爾值用true和false表示
isSet: true # {"isSet": True}
isSet1: false # {"isSet1": False}
3、null用~表示
parent: ~ # {"parent": None}
4、時間采用 ISO8601 格式
time1: 2001-12-14t21:59:43.10-05:00
# {"time1": datetime.datetime(2001, 12, 15, 2, 59, 43, 100000)}
5、日期采用復合 iso8601 格式的年、月、日表示
date: 2017-07-31
# {"date": datetime.date(2017, 7, 31)}
6、YAML 允許使用兩個感嘆號,強制轉換數據類型
int_to_str: !!str 123
bool_to_str: !!str true # {"bool_to_str": "true"}
1、數組可以采用行內表示法
animal: [Cat, Dog]
# 打印結果:{"animal": ["Cat", "Dog"]}
2、一組連詞線開頭的行,構成一個數組
animal1: - Cat - Dog - Goldfish
# 打印結果:{"animal1": ["Cat", "Dog", "Goldfish"]}
list嵌套dict:
- user : admin pwd : "123456" - user : host pwd : "111111"
其打印結果:
dict 嵌套list:
group1: - admin - "123456" group2: - host - "1111111"
其打印結果:
默認不使用引號表示,也可以用單引號和雙引號進行表示。
but雙引號不會對特殊轉義字符進行轉義。
單引號中若還有單引號,必須連續使用兩個單引號轉義
1、字符串默認不使用引號表示
str1: 這是一個字符串
2、如果字符串之中包含空格或特殊字符,需要放在引號之中。
str2: "內容:*字符串"
3、單引號和雙引號都可以使用,雙引號不會對特殊字符轉義。
str3: "內容
字符串"
str4: "content
string"
4、單引號之中如果還有單引號,必須連續使用兩個單引號轉義。
s3: "labor""s day"
5、字符串可以寫成多行,從第二行開始,必須有一個單空格縮進。換行符會被轉為空格
strline: 這是一段 多行 字符串
6、多行字符串可以使用|保留換行符,也可以使用>折疊換行
this: | Foo Bar that: > Foo Bar
7、+表示保留文字塊末尾的換行,-表示刪除字符串末尾的換行。
s4: | Foo4 s5: |+ Foo5 s6: |- Foo6 s7: | Foo7(8)對象
1、對象的一組鍵值對,使用冒號結構表示。
animal: pets
# 打印結果:{"animal": "pets"}
2、Yaml 也允許另一種寫法,將所有鍵值對寫成一個行內對象
dict1: { name: Steve, foo: bar }
# 打印結果:{"dict1": {"foo": "bar", "name": "Steve"}}
示例
五、寫入yaml文件內容示例
? thanks for watching, keep on updating...
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/42410.html
摘要:的默認配置文件位置為。比如,我們需要自定義模塊的服務端口號,可以在中添加來指定服務端口為,也可以通過來指定應用名該名字在應用中會被注冊為服務名。同時,配置內容都對開發人員可見,本身這也是一種安全隱患。 在快速入門一節中,我們輕松的實現了一個簡單的RESTful API應用,體驗了一下Spring Boot給我們帶來的諸多優點,我們用非常少的代碼量就成功的實現了一個Web應用,這是傳統的...
摘要:前端自動化測試百度搜索功能實戰可以與結合生成測試報告。以網頁版本的百度為例,百度首頁呈現的功能新聞網頁貼吧知道音樂圖片視頻地圖等,我們以百度網頁的搜索功能為例,使用結合自動化測試框架,完成一個搜索功能的測試。 ...
摘要:前言如題,今天解析下的配置文件。這時我們就可以用的屬性來配置隨機數,比如隨機字符串隨機隨機以內的隨機數的隨機數使用多配置文件很多時候我們開發項目都需要很多套環境,比如有測試環境,開發環境以及生產環境。原因是,是以的編碼方式讀取配置文件。 微信公眾號:一個優秀的廢人如有問題或建議,請后臺留言,我會盡力解決你的問題。 前言 如題,今天解析下 SpringBoot 的配置文件。 自定義屬性加...
摘要:基礎數據獲取地址端口發送訂閱主題請求參數獲取這里是發送的函數 # -*- coding:utf-8 -*-from multiprocessing import Processimport paho.mqtt.publish as publishfrom Data.data import *...
閱讀 1683·2019-08-30 12:51
閱讀 670·2019-08-29 17:30
閱讀 3709·2019-08-29 15:17
閱讀 863·2019-08-28 18:10
閱讀 1379·2019-08-26 17:08
閱讀 2184·2019-08-26 12:16
閱讀 3446·2019-08-26 11:47
閱讀 3510·2019-08-23 16:18