在Python中,如何使用连字符将变量分配给字符串?

2024-10-04 03:16:55 发布

您现在位置:Python中文网/ 问答频道 /正文

这是一个非常简单的问题。我有一个带有环境变量的prob.py

SECRET_KEY = mykey
POSTGRES_PASSWORD=mypspwd
CONTACT = myemail@me.com
APIKEY_BOT = 11aa11a1-111a-1aa1-11a1-11aaa1a1a111

当我试图从Django设置文件中访问此设置时,出现以下错误:

File "/usr/src/app/prjbot/prob.py", line 4
APIKEY_BOT= 11aa11a1-111a-1aa1-11a1-11aaa1a1a111
                   ^
SyntaxError: invalid syntax

我假设问题出在连字符上。我尝试在API键周围添加引号,但没有成功。我错过了什么

我发现了其他堆栈溢出问题,其中用户希望变量名包含连字符,但我没有发现使用包含连字符的字符串定义变量的问题


Tags: keypysecretbot环境变量contactpostgrespassword
1条回答
网友
1楼 · 发布于 2024-10-04 03:16:55

您正在错误地使用环境变量。环境变量被设计为位于名为.env的文件中的代码之外

然后,您可以设置Python代码以从.env文件导入变量

.env

SECRET_KEY = mykey
POSTGRES_PASSWORD=mypspwd
CONTACT = myemail@me.com
APIKEY_BOT = 11aa11a1-111a-1aa1-11a1-11aaa1a1a111

prob.py

使用python-decouple导入变量

from decouple import config

SECRET_KEY         = config('SECRET_KEY')
POSTGRES_PASSWORD  = config('POSTGRES_PASSWORD')
CONTACT            = config('CONTACT')
APIKEY_BOT         = config('APIKEY_BOT')

相关问题 更多 >