Python自動(dòng)化測(cè)試中yaml文件讀取操作
什么是yaml
- 一種標(biāo)記語言。yaml 是專門用來寫配置文件的語言,非常簡(jiǎn)潔和強(qiáng)大
- 更直觀,更方便,有點(diǎn)類似于json格式
- yaml文件格式:test.yaml
安裝yaml
pip install pyyaml
yaml基本語法規(guī)則
- 大小寫敏感
- 使用縮進(jìn)表示層級(jí)關(guān)系
- 縮進(jìn)時(shí)不允許使用Tab鍵,只允許使用空格。
- 縮進(jìn)的空格數(shù)目不重要,只要相同層級(jí)的元素左側(cè)對(duì)齊即可
- #表示注釋,從這個(gè)字符一直到行尾,都會(huì)被解析器忽略,這個(gè)和python的注釋一樣
鍵值對(duì)(dict)
yaml文件
user: admin pwd: 123456
用python讀取yaml文件案例如下,先用open方法讀取文件數(shù)據(jù),再通過load方法轉(zhuǎn)成Python可讀取的對(duì)像,這個(gè)load跟json里面的load是相似的。
#! /usr/bin/python3 # -*- coding:utf-8 -*- # @Time : 2020/8/17 9:23 # @Author : 碼上開始 import yaml # 定義yaml文件路徑 yaml_path = "E:\\study\\date.yaml" # 打開yaml文件 file = open(yaml_path, "r", encoding="utf-8") # 讀取 string = file.read() dict = yaml.load(string) # 轉(zhuǎn)換后數(shù)據(jù)類型為:dict print(type(dict)) print(dict) # 運(yùn)行結(jié)果: {'usr': 'admin', 'pwd': 123456}
序列(list)
yaml里面寫一個(gè)數(shù)組,前面加一個(gè)‘-'符號(hào),如下
- admin1 - admin2 - admin3
#! /usr/bin/python3 # -*- coding:utf-8 -*- # @FileName: day6.py # @Time : 2020/8/17 9:23 # @Author : 碼上開始 import yaml # 定義文件路徑 yaml_path = "E:\\study\\date.yaml" file = open(yaml_path, "r", encoding="utf-8") string = file.read() print(string) # 轉(zhuǎn)換后數(shù)據(jù)類型為列表 list = yaml.load(string, Loader=yaml.FullLoader) print(list) # 運(yùn)行結(jié)果 <class 'list'> ['admin1', 'admin2', 'admin3']
純量(str)
# 布爾值true/false n: true # int n1: 12 # float n2: 12.3 # None n3: ~
{'n': True, 'n1': 12, 'n2': 12.3, 'n3': None}
混合使用
- usr: name: admin pwd: 123456 - mail: user: xxx@qq.com pwd: 123456
運(yùn)行結(jié)果:
[{'usr': {'name': 'admin', 'pwd': 123456}}, {'mail': {'user': 'xxx@qq.com', 'pwd': 123456}}]
練習(xí)
1.熟悉以上基本方法
2.將其運(yùn)用到自動(dòng)化測(cè)試代碼中
到此這篇關(guān)于Python自動(dòng)化測(cè)試中yaml文件讀取操作的文章就介紹到這了,更多相關(guān)Python yaml文件讀取操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
如何一分鐘內(nèi)找出pandas DataFrame某列中的nan值
這篇文章主要介紹了如何一分鐘內(nèi)找出pandas DataFrame某列中的nan值問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09一文搞懂Python中Pandas數(shù)據(jù)合并
pandas是基于NumPy的一種工具,該工具是為了解決數(shù)據(jù)分析任務(wù)而創(chuàng)建的。Pandas納入了大量庫(kù)和一些標(biāo)準(zhǔn)的數(shù)據(jù)模型,提供了高效操作大型數(shù)據(jù)集的工具。pandas提供大量快速便捷地處理數(shù)據(jù)的函數(shù)和方法。你很快就會(huì)發(fā)現(xiàn),它是使Python強(qiáng)大而高效的數(shù)據(jù)分析環(huán)境的重要因素之一2021-11-11python支持同時(shí)存在多個(gè)版本的操作步驟
這篇文章主要介紹了python支持同時(shí)存在多個(gè)版本的操作步驟,在已有Python 3.8的情況下,安裝新的Python 3.9版本,感興趣的小伙伴可以參考文中步驟,文章中介紹的非常詳細(xì),需要的朋友可以參考下2024-03-03python中進(jìn)程間通信及設(shè)置狀態(tài)量控制另一個(gè)進(jìn)程
這篇文章主要介紹了python中進(jìn)程間通信及設(shè)置狀態(tài)量控制另一個(gè)進(jìn)程,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-05-05Python輸入正負(fù)10進(jìn)制,轉(zhuǎn)4位16進(jìn)制問題
這篇文章主要介紹了Python輸入正負(fù)10進(jìn)制,轉(zhuǎn)4位16進(jìn)制問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06python實(shí)現(xiàn)屏保計(jì)時(shí)器的示例代碼
這篇文章主要介紹了python實(shí)現(xiàn)屏保計(jì)時(shí)器的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08Python socket C/S結(jié)構(gòu)的聊天室應(yīng)用實(shí)現(xiàn)
這篇文章主要介紹了Python socket C/S結(jié)構(gòu)的聊天室應(yīng)用實(shí)現(xiàn),需要的朋友可以參考下2014-11-11Python爬蟲實(shí)現(xiàn)使用beautifulSoup4爬取名言網(wǎng)功能案例
這篇文章主要介紹了Python爬蟲實(shí)現(xiàn)使用beautifulSoup4爬取名言網(wǎng)功能,結(jié)合實(shí)例形式分析了Python基于beautifulSoup4模塊爬取名言網(wǎng)并存入MySQL數(shù)據(jù)庫(kù)相關(guān)操作技巧,需要的朋友可以參考下2019-09-09