为什么Python找不到我的路径?(django)

0 投票
2 回答
540 浏览
提问于 2025-04-15 15:29
import sys
sys.path.append('/home/myuser/svn-repos/myproject')
from myproject.settings import *

但是,当我运行这个脚本时,它说找不到模块?顺便说一下,settings.py已经设置好了,manage.py syncdb也能正常工作。

2 个回答

1

试试这个:

import sys
sys.path.append('/home/myuser/svn-repos/myproject')
from settings import *

注意,

from settings import *

这样做会让你很难找到导入的变量是从哪里来的。如果可以的话,尽量避免这样做,这不是一个好的做法。

3

你应该使用 sys.path.append('/home/myuser/svn-repos')。这样,当你使用 import myproject 时,Python 会在 svn-repos 文件夹里找 myproject 文件夹,然后再在里面找 settings

另外,你也可以不改动它,直接使用 import settings。不过这样不太好,因为它不够具体,可能会导入到你不想要的东西。

你还可以考虑使用 sys.path.insert(0, 'yourpath'),因为 Python 是从这个列表的开头开始查找的,往后查找。所以把你想要的路径放在最前面,可以解决之前提到的 settings 的问题。

撰写回答