python處理 yaml 時保持輸入輸出格式一致的問題記錄
問題
使用python 自帶的 pyyaml庫中,讀取yaml文件修改 再輸出后會有
1.打印 字段 亂序問題
2.列表格式問題

要想保持順序不變在 dump時添加 sort_keys=False,使yaml格式保持原來的排序
def readyaml():
with open("../data/testdata.yaml",encoding="utf-8") as f:
doc = list(yaml.safe_load_all(f))
doc[0]["body"]["username"] = "root"
with open("../data/testdata.yaml","w",encoding="utf-8") as f:
yaml.safe_dump_all(doc,f,sort_keys=False)對于 列表格式問題,
在 PyYAML 庫中,yaml.dump() 方法的 default_flow_style 參數(shù)用于控制輸出的流風格。這個參數(shù)有以下可選項:
None:根據(jù)需要選擇塊風格或流風格輸出。
True:強制使用流風格輸出。
False:強制使用塊風格輸出。
即添加 default_flow_style=None 即可,默認是False
with open(yaml_out, 'w') as file:
yaml.safe_dump(yaml_data, file,default_flow_style=None,sort_keys=False, indent=2,default_style='')到此這篇關(guān)于python處理 yaml 時保持輸入輸出格式一致的文章就介紹到這了,更多相關(guān)python yaml 輸入輸出格式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
django rest framework vue 實現(xiàn)用戶登錄詳解
這篇文章主要介紹了django rest framework vue 實現(xiàn)用戶登錄詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-07-07
使用Python+psutil開發(fā)一個簡易系統(tǒng)監(jiān)控工具
在運維自動化、服務(wù)器巡檢、故障排查和資源告警場景中,經(jīng)常需要快速獲取機器的 CPU、內(nèi)存、磁盤和進程狀態(tài),Python 的 psutil 庫正好解決了這個問題,本文會從 psutil 基礎(chǔ)用法開始,逐步實現(xiàn)一個可以實時刷新的簡易系統(tǒng)監(jiān)控工具,需要的朋友可以參考下2026-05-05
python Tkinter實時顯示數(shù)據(jù)功能實現(xiàn)
這篇文章主要介紹了python Tkinter實時顯示數(shù)據(jù)功能實現(xiàn),本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07
python opencv旋轉(zhuǎn)圖像(保持圖像不被裁減)
這篇文章主要為大家詳細介紹了python opencv旋轉(zhuǎn)圖像,保持圖像不被裁減,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-07-07
Python如何存儲和讀取ASCII碼形式的byte數(shù)據(jù)
這篇文章主要介紹了Python如何存儲和讀取ASCII碼形式的byte數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05

