Python 2.7 如何使用python命令行和脚本访问env变量?

Python 2.7 如何使用python命令行和脚本访问env变量?,python-2.7,Python 2.7,我们如何使用python命令行访问linux环境变量 eg export FILENAME=hi.txt python -c 'import sys output_file=open("/home/user/$FILENAME", "w+") print >>output_file, "hi" ' 我们遇到的问题是$FILENAME在python脚本中没有扩展为字符串“hi.txt” 有解决办法吗 谢谢。您要找的 嗨,伊格纳西奥,谢谢你的回复。我们发现,在打印os.environ

我们如何使用python命令行访问linux环境变量

eg
export FILENAME=hi.txt
python -c 'import sys
output_file=open("/home/user/$FILENAME", "w+")
print >>output_file, "hi"
' 
我们遇到的问题是$FILENAME在python脚本中没有扩展为字符串“hi.txt”

有解决办法吗

谢谢。

您要找的


嗨,伊格纳西奥,谢谢你的回复。我们发现,在打印os.environ时,python没有找到$FILENAME,但在linux SHELL中,我们可以看到文件名的值为hi.txt。那么,我们如何让python在其脚本中看到我们的SHELL变量呢?导出它将允许子流程看到该变量。如果Python脚本没有在子流程中运行,那么它将永远看不到该变量。
with io.open(os.path.expandvars("/home/user/$FILENAME"), "w+") as output_file:
  print >>output_file, "hi"