可以连续传key,进行yaml文件的读取
import yaml
from loguru import logger
class YamlReader:
def __init__(self, fileName: str = 'amcl.yaml'):
self._map = None
self._fileName = fileName
self._readYaml(self._fileName)
def _readYaml(self, fileName):
with open(fileName, encoding='utf-8') as f:
data = f.read()
self._map = yaml.load(data, Loader=yaml.FullLoader)
logger.info(self._map)
# print(type(self._map), self._map.keys())
def getValue(self, *keys):
try:
tempValue = self._map
for item in keys:
tempValue = tempValue[item]
return tempValue
except Exception as e:
logger.error(str(e))
if __name__ == '__main__':
temp = YamlReader()
print(temp.getValue('L001', 'sensor_height'))