【问题标题】:Setting Environmental Variables for Python on a Mac - seems not to work?在 Mac 上为 Python 设置环境变量 - 似乎不起作用?
【发布时间】:2012-04-01 08:30:38
【问题描述】:

这让我抓狂...

我在最新的 Mac 上使用最新的 EPD 发行版,我想学习《Python 软件设计》这本书。其中,章。 4,是一个应该加载玩弄。

但要做到这一点,我似乎需要为相关目录设置一个 PATH 变量。由于我不是很熟悉,所以我环顾四周,最后将其添加到我的 .bash-profile 中:

"PYTHONPATH="$HOME/Dropbox/Programming/swampy-2.0"

与终端的检查:

Andreass-Mac-mini:~ ak$ $PYTHONPATH
-bash: /Users/ak/Dropbox/Programming/swampy-2.0: is a directory

到目前为止,我认为它应该可以工作。然后是这样的:

>>> from TurtleWorld import *

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    from TurtleWorld import *
ImportError: No module named TurtleWorld

这是正确的文件名,正确的目录,在我看来路径不正确?

那么我必须做什么/改变它在我的 Mac 上的工作?

编辑:顺便说一下 - (在不同的地方)我还创建了一个目录 .MacOSX 并将文件 environment.plist 放入其中,并具有相同的路径变量。没有任何改变:-(

谢谢 安德烈亚斯

【问题讨论】:

    标签: python macos environment-variables


    【解决方案1】:

    在 .bash 配置文件中使用 export 命令使环境变量出现在其他上下文中:

    export PYTHONPATH=$HOME/Dropbox/Programming/swampy-2.0
    

    【讨论】:

    • @A.K.为了确认,你能看到 ls $PYTHONPATH 中的 TurtleWorld.py 吗?
    • @A.K.嗯,如果在Python中手动操作sys.path,可以导入TurtleWorld吗?
    • 是的。这样可行。所以问题仍然是我如何将它放入该列表中?
    • @A.K.您是像命令一样运行 .bash-profile,还是 source-ing 它?我只是对为什么导出的PYTHONPATH 不会影响sys.path 感到困惑。
    • 对不起。但是你找到了我。我不知道你有什么。我刚刚更改了文件 .bash_profile。
    【解决方案2】:

    您是否将脚本命名为 Turtleworld.py?如果是这样,那就是问题所在。如果您的脚本名称与模块名称相同,则无法导入该模块。希望这可以帮助! :D

    【讨论】:

      猜你喜欢
      • 2015-12-15
      • 1970-01-01
      • 2018-05-07
      • 1970-01-01
      • 1970-01-01
      • 2012-03-07
      • 1970-01-01
      • 2013-03-03
      • 1970-01-01
      相关资源
      最近更新 更多