[英]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.