我不完全清楚你的意思是什么load
。这可能意味着IDLE 编辑器中Open
的Close
文件。或者它可能意味着能够使用 Pythonimport
语句从其他文件加载现有的 Python 模块。我假设后者,load
你的意思是import
。
在 Mac OS X 上启动 IDLE 的一般方法有两种。一种是从终端会话的命令行;另一种是从终端会话的命令行启动。如果您使用 python.org 安装程序安装了 Python 3.2,则默认情况下键入/usr/local/bin/idle3.2
将起作用。另一种方法是从 启动IDLE.app
,/Applications/Python 3.2
即双击其图标。因为您说文件的默认目录是您的Documents
文件夹,所以我假设您使用的是第二种方法,因为IDLE.app
设置Documents
为其当前工作目录,该目录成为 *Open*s 和 *Save*s 的默认目录并自动添加为Python 的第一个目录,用于在ing时搜索模块sys.path
的目录列表。Python
import
如果您想将其他目录添加到sys.path
,正如您所指出的,您可以使用PYTHONPATH
环境变量来执行此操作。执行此操作的标准方法是将export PYTHONPATH=...
定义添加到 shell 启动脚本,例如.bash_profile
. 但是,如果您使用IDLE.app
,则不涉及任何 shell,因此 in 中的命令.bash_profile
无效。
虽然有一些方法可以修改 OS X GUI 应用程序的环境变量,但在这种情况下,更简单的解决方案是使用另一种方法来调用 IDLE,从 shell 会话的命令行,使用/usr/local/bin/idle3.2
或者,如果你已经运行文件夹中的Update Shell Profile
命令/Applications/Python 3.2
(并打开一个新的终端会话),只需idle3
. 然后,您设置的 PYTHONPATH 环境变量将由该 IDLE 继承。
顺便说一句,除了修改 IDLE 中的代码之外,没有直接的方法可以修改IDLE.app
from的初始当前工作目录。Documents
如果从命令行启动 IDLE,它将继承 shell 的当前工作目录。
[更新] 但是,与其在定义中胡闹PYTHONPATH
,这里还有另一种更简单,可能更好的方法,它应该适用于IDLE.app
or 或 command line idle
。它利用Python 路径配置 ( .pth
) 文件和用户站点包目录。假设您在 Mac OS X 上使用 3.2 的标准 Python 框架构建(例如来自 python.org 安装程序),请为要永久添加到的目录创建一个路径文件sys.path
。在终端会话中:
mkdir -p ~/Library/Python/3.2/lib/python/site-packages
cd ~/Library/Python/3.2/lib/python/site-packages
cat >my_paths.pth <<EOF
/Users/YOUR_USER_NAME/path/to/your_additional_python_directory_1
/Users/YOUR_USER_NAME/path/to/your_additional_python_directory_2
EOF
现在,每当您以您的用户名运行 Python 3.2 或 IDLE 时,您添加到.pth
文件中的目录将自动添加到sys.path
.
顺便说一句,早于 3.2 或 2.7 的 Python 版本的用户站点包目录的确切路径位置可能略有不同。此外,在其他 Unix-y 系统上,用户站点包目录的默认位置是~/.local/lib/python3.2/site-packages
.