Python搜索路径 - Python找不到我的模块

2 投票
2 回答
18242 浏览
提问于 2025-04-16 23:42

我想从命令行运行一个脚本,但Python完全不搭理我:

[graffias:~/testing.tustincommercial.com]$ export PYTHONPATH=`pwd`:$PYTHONPATH                                          
[graffias:~/testing.tustincommercial.com]$  python -c 'import oneclickcos.mainapp; mainapp.mail.worker_loop()'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named oneclickcos.mainapp
[graffias:~/testing.tustincommercial.com]$ python
Python 2.5.2 (r252:60911, Jan 24 2010, 17:44:40)
[GCC 4.3.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import oneclickcos
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named oneclickcos
>>>
[graffias:~/testing.tustincommercial.com]$ ls ./oneclickcos/mainapp/mail.py
./oneclickcos/mainapp/mail.py
[graffias:~/testing.tustincommercial.com]$

有什么建议吗?

给不小心的人提个醒:上面的命令应该是 $python -c 'import oneclickcos.mainapp.mail; oneclickcos.mainapp.mail.worker_loop()'(还有其他有效的变体)。

2 个回答

3

为了从这样的文件夹中导入内容,这些文件夹必须被设置为。请问 oneclickcosmainapp 里面有 __init__.py 文件吗?

6

你在 oneclickcos/oneclickcos/mainapp/ 里有 __init__.py 文件吗?如果没有,赶紧加一个进去,然后再试试——这可能就是你遇到的问题所在。

想了解更多,可以查看 http://docs.python.org/tutorial/modules.html

撰写回答