Python';s os.getenv()不';似乎不适合OSX小牛队

Python';s os.getenv()不';似乎不适合OSX小牛队,python,macos,google-app-engine,osx-mavericks,Python,Macos,Google App Engine,Osx Mavericks,在OSX Maverick的终端中,我将env变量设置为: export FLASK_CONF=DEV 然后使用export我可以确认变量已设置 declare -x FLASK_CONF="DEV" ... 现在,当我在GAE下运行我的应用程序时:dev\u appserver.py src/ 我收到的消息是,已加载生产环境而不是开发环境: INFO 2014-01-15 23:39:41,702 __init__.py:38] Staging/Production Env fou

在OSX Maverick的终端中,我将env变量设置为:

export FLASK_CONF=DEV
然后使用
export
我可以确认变量已设置

declare -x FLASK_CONF="DEV"
...
现在,当我在GAE下运行我的应用程序时:
dev\u appserver.py src/

我收到的消息是,已加载生产环境而不是开发环境:

INFO     2014-01-15 23:39:41,702 __init__.py:38] Staging/Production Env found
代码如下:

if os.getenv('FLASK_CONF') == 'DEV':
    logging.info("DEV ENv found")
    app.config.from_object('application.settings.Development')
elif os.getenv('FLASK_CONF') == 'TEST':
    logging.info("TEST Env found")
    app.config.from_object('application.settings.Testing')
else:
    logging.info("Staging/Production Env found")
    app.config.from_object('application.settings.Production')

我100%确信这在之前的山狮身上效果很好。这可能与Maverick OSX如何设置/使用env变量有关吗?有什么建议可以解决这个问题吗?

尝试使用以下方法在app.yaml中定义您的环境变量:


是对Mavericks的一个快速测试,以证明它正在设置环境变量,Python(Mavericks内置的一个,但是机器上其他7个版本的CPython和PyPy也是如此…)能够看到它们。所以可能还有其他问题。为了调试它,我们需要一个完整的示例(请参阅)来重现问题,而不仅仅是一个代码片段,它可以自己工作,但在您的环境中不工作。是的,它可以工作。谢谢GAE似乎是在一个孤立的环境下运行的。@Hooman-devappserver的目标是重现应用程序在云中运行时所处的环境。
env_variables:
  FLASK_CONF: 'DEV'