我想讀取一些環境變量到我的ConfigParser文件中。Python配置解析器環境變量
我指的是this answer但我正在逐漸
"InterpolationDepthError: Value interpolation too deeply recursive" error.
section: [amazon]
option : amazon_access_key
rawval : %(AMAZON_ACCESS_KEY)s
這裏是我的配置文件的一部分:
[amazon]
amazon_access_key=%(AMAZON_ACCESS_KEY)s
amazon_secret_key=%(AMAZON_SECRET_KEY)s
而這就是我寫調用文件:
from ConfigParser import SafeConfigParser
import os
config = SafeConfigParser(os.environ)
config.read('config.txt')
當我在「亞馬遜」部分直接調用這些變量時,我得到上述錯誤。
當我所說的 「默認」 部分中這些變量,如:
[default]
aws_access_key=%(AMAZON_ACCESS_KEY)s
aws_secret_key=%(AMAZON_SECRET_KEY)s
[amazon]
amazon_access_key=%(aws_access_key)s
amazon_secret_key=%(aws_secret_key)s
我得到以下錯誤:
ConfigParser.InterpolationMissingOptionError: Bad value substitution:
section: [amazon]
option : amazon_access_key
key : aws_access_key
rawval : %(aws_access_key)s
缺少什麼我在這裏?
另外,如何爲本地和生產部署分別配置文件?目前,所有配置對於本地和生產環境都是相同的。
你嘗試使用環境變量名不遮蔽原始密鑰?你也可能想看看'[amazon]'部分下的選項卡是否有問題。 –
[amazon]部分下沒有選項卡。 –