我只是写这个问题感到很尴尬。
我刚刚安装了python 3.4和django 1.8
如果我输入python解释器并输入:
>>> import django
>>> print(django.get_version())
我得到答案1.8,这很好。
如果我创建一个文件django.py并在其中输入:
import django
print(django.get_version())
发生了两件事:
当我运行它时,我收到错误
Traceback (most recent call last):
File "django.py", line 1, in <module>
import django
File "C:\Python_Mongo\django.py", line 2, in <module>
print(django.get_version())
AttributeError: 'module' object has no attribute 'get_version'
然后创建一个缓存文件夹__pycache__
,如果我只是启动python解释器并输入命令:import django
它运行我的django.py
文件! (任何其他命令都没问题。)
请帮助:(
答案 0 :(得分:6)
您的本地目录中有一个文件django.py
,它会掩盖Django包。将其重命名为其他内容。
查看你的追溯:
File "django.py", line 1, in <module>
import django
注意如何从名为import django
的文件
django.py
答案 1 :(得分:3)
没有什么令人惊讶的。如果您在名为import anything
的文件中调用anything.py
,它将自行导入。
Python的导入路径解析首先搜索当前目录,然后才在系统路径中查找模块。