我有一个Shell脚本,我们称之为file.sh,它标识变量LOGFILE。我试图运行一个Python脚本调用相同的变量,但它无法正确导出。我试过:
file.sh
LOGFILE
import os print(os.environ(LOGFILE))
得到了这个错误:name 'LOGFILE' is not defined它们在同一个目录中,所以我不确定错误是什么?我如何修复这个问题?
name 'LOGFILE' is not defined
e4eetjau1#
环境变量不能作为python变量直接访问。这就是为什么你需要以字符串的形式传递外部环境变量的名称。此外,environ不是一个函数,它是一个字典,所以你需要使用方括号在字典中查找'LOGFILE':
print(os.environ['LOGFILE'])
如果你想要一个做类似事情的函数,使用os.getenv()
print(os.getenv('LOGFILE'))
1条答案
按热度按时间e4eetjau1#
环境变量不能作为python变量直接访问。这就是为什么你需要以字符串的形式传递外部环境变量的名称。此外,environ不是一个函数,它是一个字典,所以你需要使用方括号在字典中查找'LOGFILE':
如果你想要一个做类似事情的函数,使用os.getenv()