Python windows pycharm中的程序参数中未计算环境变量

Python windows pycharm中的程序参数中未计算环境变量,python,windows,pycharm,environment-variables,Python,Windows,Pycharm,Environment Variables,试图通过pycharm从数据流快速启动运行wordcount.py示例时,在解析包含环境变量的命令行参数时遇到了一个问题 当我设置环境变量并使用相同的参数在终端中运行脚本时,它工作得很好: python wordcount.py --input gs://dataflow-samples/shakespeare/kinglear.txt --output gs://%BUCKET%/wordcount/outputs --runner DataflowRunner --project %PR

试图通过pycharm从数据流快速启动运行wordcount.py示例时,在解析包含环境变量的命令行参数时遇到了一个问题

当我设置环境变量并使用相同的参数在终端中运行脚本时,它工作得很好:

python wordcount.py --input gs://dataflow-samples/shakespeare/kinglear.txt --output gs://%BUCKET%/wordcount/outputs --runner DataflowRunner --project %PROJECT% --temp_location gs://%BUCKET%/tmp/
我尝试了以下解析环境变量的变体-没有一个有效:${ENV},$ENV$,%ENV%


我正在使用Windows 10,PyCharm版本2019.3.1。

当您将环境变量作为参数值(例如,
--project
--temp_location
)传递到PyCharm配置时,它会将这些变量作为“字符串”值,而不是您在第一个屏幕截图上设置的实际值“用户环境变量”。我在StackOverflow上快速搜索了许多相关线程,但没有找到解决方案,因此我提出了自己的解决方案,即使用当前设置并在解析代码中的参数后替换值:

# Args parsing here

if args.project == "${PROJECT}":
    args.project = os.environ.get("PROJECT")
    args.temp_location = args.temp_location.replace("${BUCKET}", os.environ.get("BUCKET"))
但是,我认为在

时你应该考虑使用它。
  • 您使用PyCharm的频率高于Terminal
  • 有许多参数引用环境变量,您必须为不同的设置更改它们的值

希望Pycharm能很快支持此功能。

您是否尝试过使用is like is,它很有效,但我试图找到一种解决方法…据我所见,该功能不受支持。哦,第二个不是环境变量,它们是脚本的参数,请尝试将您的输入数据指定为脚本参数,请参见屏幕截图IN