Python错误与简单的代码

时间:2014-04-25 15:53:52

标签: python django

我只是写这个问题感到很尴尬。

我刚刚安装了python 3.4和django 1.8

如果我输入python解释器并输入:

>>> import django    
>>> print(django.get_version())

我得到答案1.8,这很好。

如果我创建一个文件django.py并在其中输入:

import django
print(django.get_version())

发生了两件事:

  1. 当我运行它时,我收到错误

    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'
    
  2. 然后创建一个缓存文件夹__pycache__,如果我只是启动python解释器并输入命令:import django它运行我的django.py文件! (任何其他命令都没问题。)

  3. 请帮助:(

2 个答案:

答案 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的导入路径解析首先搜索当前目录,然后才在系统路径中查找模块。