簡體   English   中英

python-dotenv 的默認變量

[英]Default variables with python-dotenv

我想制作一個開箱即用的 package,它具有合理的默認變量,比如定義一些服務器、端口等,這樣代碼就可以像他期望的那樣在沒有進一步配置的情況下為普通用戶工作。 但是如果 a.env 文件存在,我希望這個環境變量被覆蓋,以允許配置其他環境。 我讀到如果 no.env 文件存在,python-dotenv load_values 將使用默認值,但是 pypi 上沒有示例如何理想地設置。

我認為這種方式可行。

default_dict = {'API_KEY':'test'} #e.x for an api_key 

try:
    load_dotenv(find_dotenv())
    api_key = os.getenv("API_KEY")
except:
    api_key = default_dict['API_KEY']

閱讀@chepner 的評論我認為可能有一個使用合並的解決方案。 還不知道那個功能。

from dotenv import dotenv_values


default_envs = {"MY_SERVER": "https://my-server.com"}
config = {
    **default_envs,
    **dotenv_values
}

這可能很好,因為它允許部分覆蓋並且我不需要 go 通過所有變量。

歡迎發表評論。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM