yaml簡單介紹
YAML是一種標(biāo)記語言,它使用空白符號縮進(jìn)和大量依賴外觀的特色,特別適合用來表達(dá)或編輯數(shù)據(jù)結(jié)構(gòu)、各種配置文件、傾印調(diào)試內(nèi)容、文件大綱。
- 大小寫敏感
- 使用縮進(jìn)表示層級關(guān)系
- 縮進(jìn)不允許使用tab,只允許空格
- 縮進(jìn)的空格數(shù)不重要,只要相同層級的元素左對齊即可
- '#'表示注釋
yaml數(shù)組
yaml語音數(shù)組很簡單,使用短橫線 ‘-' 作為數(shù)組的開始標(biāo)志。
一維數(shù)組
import yaml
#三個雙引號的作用是字符換行不需要加換行符
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)系來的,更多維數(shù)組道理相同,具體看下面的代碼:
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 形式,中間使用冒號+空格進(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ù)雜字典形式
下面的例子中,我們使用一個嵌套字典,就是字典里面的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 復(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讀取和寫入
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寫入文件
config = [1,2,3]
with open('YAML1.yml','w')as f:
yaml.dump(config,f)
YAML1.yml文件內(nèi)容:
資料參考:
YAML菜鳥教程
總結(jié)
yaml文件是項(xiàng)目配置常用的配置文件,通常我們會將超參數(shù)和一些常用值放在配置文件中,方便修改,讀取也十分的方便。
到此這篇關(guān)于python 中yaml文件用法大全的文章就介紹到這了,更多相關(guān)python 中yaml文件用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python讀取yaml文件的詳細(xì)教程
- python讀取yaml文件后修改寫入本地實(shí)例
- Python3操作YAML文件格式方法解析
- Python讀取YAML文件過程詳解
- python解析yaml文件過程詳解
- python中yaml配置文件模塊的使用詳解