我正在尝试从bash运行我的程序。

我收到以下错误:


  文件“ /Users/tai/Desktop/FlashY/flashy/sniffer/awsAccess.py”,第8行,在
      aws_access_key_id = getenv('AWS_ACCESS_KEY');
  
  NameError:未定义名称“ getenv”


我将导出保存在bash_profile中。我检查并发现它们都在那里:

vim ~/.bash_profile


我在awsAccess中的代码如下所示:

#aswAccess holds the names of the bash environment set keys.
#used by other classes to create a connection to aws
aws_access_key_id=getenv('AWS_ACCESS_KEY');
aws_secret_access_key=getenv('AWS_SECRET_KEY');
aws_dynamo_region=getenv('DYANAMO_REGION')


密钥名称(不确定该叫什么)在我的bash_profile中匹配。

我正在看一个使用getenv的示例,它运行良好。我正在使用最新的osx,python 2.7,从bash shell等运行。不确定发生了什么问题。

谢谢!

最佳答案

getenv是os模块中的一个函数,除非您适当地导入它,否则不能单独调用它。

因此,将文件放在文件顶部:

import os


并将函数调用更改为os.getenv()。或者,独立导入功能:

from os import getenv

关于python - 未定义从Bash getenv运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24815698/

10-13 07:22