我有几行代码将打开一个yaml文件并解析一些值并将它们存储在PYTHON中的局部变量中。
config.yml:
mysql:
host: localhost
database: myDatabase
user: root
password: root
和到目前为止的代码:
import yaml
with open("config.yml", 'r') as ymlfile:
cfg = yaml.load(ymlfile)
host = cfg["mysql"]["host"]
database = cfg["mysql"]["database"]
user = cfg["mysql"]["user"]
password = cfg["mysql"]["password"]
我想知道是否有办法将其存储在一个整齐的函数中,更重要的是,从另一个函数调用每个变量。
类似:
def parse_config():
<code>
def main():
password = parse_config()
此外,最好在SEPERATE类中使用它吗?
您可以将其编写为一个类,这样就不必每次都访问文件。
import yaml
class MyYaml():
def __init__(self):
with open("config.yml", 'r') as ymlfile:
cfg = yaml.load(ymlfile)
self.host = cfg["mysql"]["host"]
self.database = cfg["mysql"]["database"]
self.user = cfg["mysql"]["user"]
self.password = cfg["mysql"]["password"]
my_yaml = MyYaml()
print(my_yaml.host)
print(my_yaml.database)