python 中yaml文件用法大全
yaml簡(jiǎn)單介紹
YAML是一種標(biāo)記語(yǔ)言,它使用空白符號(hào)縮進(jìn)和大量依賴外觀的特色,特別適合用來(lái)表達(dá)或編輯數(shù)據(jù)結(jié)構(gòu)、各種配置文件、傾印調(diào)試內(nèi)容、文件大綱。
- 大小寫(xiě)敏感
- 使用縮進(jìn)表示層級(jí)關(guān)系
- 縮進(jìn)不允許使用tab,只允許空格
- 縮進(jìn)的空格數(shù)不重要,只要相同層級(jí)的元素左對(duì)齊即可
- '#'表示注釋
yaml數(shù)組
yaml語(yǔ)音數(shù)組很簡(jiǎn)單,使用短橫線 ‘-' 作為數(shù)組的開(kāi)始標(biāo)志。
一維數(shù)組
import yaml #三個(gè)雙引號(hào)的作用是字符換行不需要加換行符 y = """ - 111 - 222 - 333 """ # y等同于y1 y1 = '- 111\n- 222\n- 333' config = yaml.safe_load(y) config
out: [111, 222, 333]
二維數(shù)組
二維數(shù)組就是按照縮進(jìn)關(guān)系來(lái)的,更多維數(shù)組道理相同,具體看下面的代碼:
import yaml y = """ - - 111 - 222 - 333 - - 111 - 222 - 333 """ config = yaml.safe_load(y) config
out : [[111, 222, 333], [111, 222, 333]]
yaml字典
簡(jiǎn)單字典形式
yaml字典的模式是Key: value 形式,中間使用冒號(hào)+空格進(jìn)行連接
import yaml y = """ '0': 1 '1': 2 '2': 3 """ config = yaml.safe_load(y) config
out: {‘0': 1, ‘1': 2, ‘2': 3}
復(fù)雜字典形式
下面的例子中,我們使用一個(gè)嵌套字典,就是字典里面的value值又是一個(gè)字典
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 復(fù)雜結(jié)構(gòu) 數(shù)組里面嵌入字典
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}]
字典里面嵌入數(shù)組
import yaml y1 = """ object1: - 111 - 222 object2: - 111 - 222 """ config = yaml.safe_load(y1) config
out : {‘object1': [111, 222], ‘object2': [111, 222]}
yaml讀取和寫(xiě)入
YAML.yml文件內(nèi)容:
# yaml文件讀取 import yaml with open('YAML.yml','r')as f: config = yaml.safe_load(f) config
out:[0, 111, 222]
# yaml寫(xiě)入文件 config = [1,2,3] with open('YAML1.yml','w')as f: yaml.dump(config,f)
YAML1.yml文件內(nèi)容:
資料參考:
總結(jié)
yaml文件是項(xiàng)目配置常用的配置文件,通常我們會(huì)將超參數(shù)和一些常用值放在配置文件中,方便修改,讀取也十分的方便。
到此這篇關(guān)于python 中yaml文件用法大全的文章就介紹到這了,更多相關(guān)python 中yaml文件用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用pickle存儲(chǔ)數(shù)據(jù)dump 和 load實(shí)例講解
今天小編就為大家分享一篇使用pickle存儲(chǔ)數(shù)據(jù)dump 和 load實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12圖片去摩爾紋簡(jiǎn)述實(shí)現(xiàn)python代碼示例
這篇文章主要為大家介紹了圖片去摩爾紋簡(jiǎn)述實(shí)現(xiàn)的python代碼示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Python實(shí)現(xiàn)JSON反序列化類對(duì)象的示例
本篇文章主要介紹了Python實(shí)現(xiàn)JSON反序列化類對(duì)象的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01python實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)聊天程序
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)聊天程序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07python 通過(guò)類中一個(gè)方法獲取另一個(gè)方法變量的實(shí)例
今天小編就為大家分享一篇python 通過(guò)類中一個(gè)方法獲取另一個(gè)方法變量的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01python面向?qū)ο笕腴T教程之從代碼復(fù)用開(kāi)始(一)
這篇文章主要給大家介紹了關(guān)于python面向?qū)ο笕腴T教程之從代碼復(fù)用開(kāi)始的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們來(lái)一起看看吧2018-12-12Pandas實(shí)現(xiàn)復(fù)制dataframe中的每一行
這篇文章主要介紹了Pandas實(shí)現(xiàn)復(fù)制dataframe中的每一行方式,2024-02-02