这是一个后续问题,因为我正在努力推进Zelle的Python:编程。
在交互模式下打开图形窗口时,IDLE 2.7.2似乎有挂起问题。但是,我可以简单地在终端中以交互方式运行Python,并且没有任何这些问题。所以这是一个很大的帮助。 Zelle提供了一个名为graphics.py的简化图形文件,以便在直接处理Tkinter之前加快对象和图形的速度。
我的问题是这个。我应该在哪里放置graphics.py,所以终端会看到它(当它被调用时),而不是每次都包含完整路径?谢谢,
亨利
答案 0 :(得分:2)
根据PEP 0370,放置用户包的好地方在~/.local/lib/python2.7/site-packages
。
此处的模块应该是可导入的。
答案 1 :(得分:1)
您可以修改~/.bashrc
以包含包含文件位置的PYTHONPATH
定义。
export PYTHONPATH="/path/to/directory_containing_graphics.py"
请注意,如果您的家庭主管使用/Users/[username]/etc/directory_containing_graphics.py
,我会隐约地记得~
被{{1}}所咬,并没有像我预期的那样在OS X上扩张。
答案 2 :(得分:0)
我深入兔子洞深入了解这个问题。事实证明,OSX上的bash有一些怪癖,并不是出乎意料的各种各样的UNIX。事实证明,在启动bash shell时,bash会在.bash_profile
中查找配置语句。如果你将bash输入bash,你就会启动一个子shell,并且当且仅当执行.bashrc
时才会这样做。
要确保您只需管理一个配置文件,请输入:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
在.bash_profile
中。这只是告诉bash查看.bashrc
文件是否存在。然后,您可以单独保留该文件,只修改您的.bashrc
文件,并且所有bash实例都将被修改。一旦我弄清楚这一点,我仍然必须解决我的问题。这是我能做的最好的事情。安装Python时,将其安装到我的.bash_profile:
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH
这告诉bash在哪里查找运行Python所需的库。所以我把这个陈述移到我的.bashrc
文件后放入" if"声明到我的.bash_profile
。然后我尝试使用我的Python模块的路径添加一个:到PATH语句,但这没有用。所以,我已经在.bashrc中找到了这样的声明:
PYTHONPATH=$PYTHONPATH:/Users/ftpbub/Documents/workspace/Python\ Programming\ Modules/src/
export PYTHONPATH
现在我在命令提示符下输入python
,当我到达python时,我可以在没有路径的情况下输入import modulename
并且它可以工作。如果我在新目录中启动一个新项目,我应该可以将它添加到我的PYTHONPATH
并且很好。我本来希望能够将python modulename
直接输入bash并让模块执行,但我还没有想出如何做到这一点。除此之外,我认为这是我能做的最好的事情。关于如何从bash提示直接进入模块而不进入路径的想法?