小編給大家分享一下python中讀取yaml文件的方法是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
主要從事網(wǎng)頁(yè)設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、響應(yīng)式網(wǎng)站開(kāi)發(fā)、程序開(kāi)發(fā)、微網(wǎng)站、微信小程序定制開(kāi)發(fā)等,憑借多年來(lái)在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷(xiāo)經(jīng)驗(yàn),集策劃、開(kāi)發(fā)、設(shè)計(jì)、營(yíng)銷(xiāo)、管理等多方位專(zhuān)業(yè)化運(yùn)作于一體,具備承接不同規(guī)模與類(lèi)型的建設(shè)項(xiàng)目的能力。
yaml 是專(zhuān)門(mén)用來(lái)寫(xiě)配置文件的語(yǔ)言,非常簡(jiǎn)潔和強(qiáng)大,之前用ini也能寫(xiě)配置文件,看了yaml后,發(fā)現(xiàn)這個(gè)更直觀,更方便,有點(diǎn)類(lèi)似于json格式。
yaml基本語(yǔ)法規(guī)則:
·大小寫(xiě)敏感;
·使用縮進(jìn)表示層級(jí)關(guān)系;
·縮進(jìn)時(shí)不允許使用Tab鍵,只允許使用空格;
·縮進(jìn)的空格數(shù)目不重要,只要相同層級(jí)的元素左側(cè)對(duì)齊即可;
·#表示注釋?zhuān)瑥倪@個(gè)字符一直到行尾,都會(huì)被解析器忽略,這個(gè)和python的注釋一樣。
yaml支持的數(shù)據(jù)結(jié)構(gòu)有三種:
·對(duì)象:鍵值對(duì)的集合,又稱(chēng)為映射(mapping)/ 哈希(hashes) / 字典(dictionary)
·數(shù)組:一組按次序排列的值,又稱(chēng)為序列(sequence) / 列表(list)
·純量(scalars):?jiǎn)蝹€(gè)的、不可再分的值。字符串、布爾值、整數(shù)、浮點(diǎn)數(shù)、Null、時(shí)間、日期
安裝yaml
使用pip安裝pyyaml模塊
pip install pyyaml
python讀取yaml文件
先用open方法讀取文件數(shù)據(jù),再通過(guò)load方法轉(zhuǎn)成字典,這個(gè)load跟json里面的load是相似的。
# coding:utf-8 import yaml import os # 獲取當(dāng)前腳本所在文件夾路徑 curPath = os.path.dirname(os.path.realpath(__file__)) # 獲取yaml文件路徑 yamlPath = os.path.join(curPath, "cfgyaml.yaml") # open方法打開(kāi)直接讀出來(lái) f = open(yamlPath, 'r', encoding='utf-8') cfg = f.read() print(type(cfg)) # 讀出來(lái)是字符串 print(cfg) d = yaml.load(cfg) # 用load方法轉(zhuǎn)字典 print(d) print(type(d))
運(yùn)行結(jié)果如下:
看完了這篇文章,相信你對(duì)python中讀取yaml文件的方法是什么有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享標(biāo)題:python中讀取yaml文件的方法是什么
網(wǎng)頁(yè)網(wǎng)址:http://sd-ha.com/article22/gpsdjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、企業(yè)網(wǎng)站制作、面包屑導(dǎo)航、建站公司、小程序開(kāi)發(fā)、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)