<分区>
我遇到了一些无法运行的脚本的非常神秘的行为。显然下面的脚本很简单,什么也不做,但它在真实脚本中重现了行为。这是名为 test.py
的文件中的代码。
import os
os.chdir('/home/jacob/twcSite')
import app
app
位于'home/jacob/twcSite'
,与当前目录不同,包含test.py
.如果我在命令行键入 python test.py
,我会得到 ImportError: No module named app
。但是,如果我简单地键入 python
来启动交互式解释器并复制粘贴完全相同的三个命令,那么它就可以正常工作而不会出现导入错误。
什么可能导致这个错误?它是同一版本的python。完全相同的代码行。为什么在这两种情况下我都会得到不同的行为?只是为了提供更多细节,如果您在调用 os.chdir
之前和之后将输出打印到 os.getcwd()
,它确实声称已更改到正确的目录(尽管显然并非如此)。我正在运行 Ubuntu 14.04,Python 版本 2.7.6。