python 中yaml文件用法大全
yaml簡單介紹
YAML是一種標記語言,它使用空白符號縮進和大量依賴外觀的特色,特別適合用來表達或編輯數據結構、各種配置文件、傾印調試內容、文件大綱。
- 大小寫敏感
- 使用縮進表示層級關系
- 縮進不允許使用tab,隻允許空格
- 縮進的空格數不重要,隻要相同層級的元素左對齊即可
- ‘#’表示註釋
yaml數組
yaml語音數組很簡單,使用短橫線 ‘-‘ 作為數組的開始標志。
一維數組
import yaml #三個雙引號的作用是字符換行不需要加換行符 y = """ - 111 - 222 - 333 """ # y等同於y1 y1 = '- 111\n- 222\n- 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文件內容:
# 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文件內容:
資料參考:
YAML菜鳥教程
總結
yaml文件是項目配置常用的配置文件,通常我們會將超參數和一些常用值放在配置文件中,方便修改,讀取也十分的方便。
到此這篇關於python 中yaml文件用法大全的文章就介紹到這瞭,更多相關python 中yaml文件用法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python常用配置文件ini、json、yaml讀寫總結
- python操作yaml的方法詳解
- Python使用yaml模塊操作YAML文檔的方法
- Python YAML文件的讀寫操作詳解
- Python 常見的配置文件寫法梳理匯總