yaml文件的封装
时间: 2023-06-22 15:19:13 浏览: 90
yaml文件可以封装在一个类中,以便在程序中更方便地使用。以下是一个示例代码:
```python
import yaml
class Config:
def __init__(self, config_file):
with open(config_file, 'r') as f:
self.config = yaml.safe_load(f)
def get_value(self, key):
keys = key.split('.')
value = self.config
for k in keys:
value = value.get(k)
if value is None:
return None
return value
```
在这个示例中,我们定义了一个名为`Config`的类,它接受一个yaml配置文件的文件名作为参数,可以通过`get_value`方法来获取配置项的值。在`get_value`方法中,我们先将配置项的名称按照`.`分割成一个列表,然后逐层访问字典中的子项,直到获取到最终的配置项的值。如果访问过程中遇到了None值,则直接返回None。
使用这个类,我们可以这样获取配置项的值:
```python
config = Config('config.yaml')
host = config.get_value('database.host')
port = config.get_value('database.port')
username = config.get_value('database.username')
password = config.get_value('database.password')
```
这样,我们就可以方便地在程序中使用yaml配置文件了。
阅读全文