[英]Python how to get value from config toml file
您好我正在尝试从 config.toml 文件中获取值。 下面是 config.toml 文件:
path.repo_uat7="/home/developer/user1"
path.repo_uat12="/home/repo/user21"
database.hostname.uat7="dbname7"
database.hostname.uat12="dbname12"
database.port="1825"
db.cluster.nodes=["cluster1:15382","cluster2:15382"]
我尝试通过以下 python 脚本获取 path.repo_uat7 和 path.repo_uat12 的值:
#!/usr/bin/env python3
import toml
import sys, os
data = toml.load("uat7.toml")
print (toml.dumps(data))
desc = str(sys.argv[1])
st = desc.split(".")
st1 = st[0]
st2 = st[1]
for k1, v1 in data.items():
if k1 == st1:
for k2, v2 in v1.items():
if k2 == st2:
print(v2)
这就是我运行代码的方式:python getvar.py path.repo_uat7。 我得到 output 作为
/home/developer/user1
但是如果我想获取数据库或者db.cluster.nodes,如何迭代多次,我没有得到完美的解决方案。 请帮忙。
您不必重复。 您可以使用给定的键直接索引data
。 将for
循环替换为
print(data[st1][st2])
你得到相同的 output。
同样,您可以编写data['database']['hostname']['uat7']
来获取"dbname7"
等。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.