为什么 VSCode 将内联注释显示为 .env 文件中环境变量的一部分?

问题描述 投票:0回答:1

VSCode 在导入环境变量时显示 .env 文件中的内联注释和引号,我不明白为什么。如果我仅在 VSCode -> Run 中从终端运行脚本,则不会发生这种情况。还有

dotenv 根据文档非常宽容:

值可以不加引号、单引号或双引号。键、等号和值前后的空格将被忽略。值后面可以有注释。

这是我的.env:

TEST='abc'
TEST2="def"
TEST3='ghi' # comment 1
TEST4="hig" # comment 2

这是文件 test_dotenv.py:

import os
from dotenv import load_dotenv
load_dotenv()
print("-=-START")
print(os.getenv('TEST'))
print(os.getenv('TEST2'))
print(os.getenv('TEST3'))
print(os.getenv('TEST4'))

在终端中,它按预期运行:

python ./tests/component/test_dotenv.py

enter image description here

在 VSCode 中,它不会:

enter image description here

python visual-studio-code dotenv
1个回答
0
投票

dotenv 文件不是 python 代码,行中间的

#
不是注释。

不过,您应该能够以 beginning by

#
行的形式发表评论。

它似乎可以在您的终端上运行,这一事实可能是未经证实的行为,您不应该依赖于此。

根据文档

python-dotenv 支持的 .env 文件的语法与 Bash 类似:

# Development settings
DOMAIN=example.org
ADMIN_EMAIL=admin@${DOMAIN}
ROOT_URL=${DOMAIN}/app

© www.soinside.com 2019 - 2024. All rights reserved.