Python:无法导入uti

2024-05-26 04:24:38 发布

您现在位置:Python中文网/ 问答频道 /正文

在阅读django/forms/widgets.py的代码时,我看到:

from util import flatatt

为了深入研究,我试图在终端的Python shell中导入util模块,但是我得到了一个错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  ImportError: No module named util

这让我很困惑。怎么了?


Tags: 模块django代码frompyimport终端错误
4条回答
from django.forms.utils import flatatt

它适用于django 1.11版本,并且可能适用于1.8到1.10版本

在python中,您会得到以下重要信息:

Traceback (most recent call last):
  File "b.py", line 3, in <module>
    from util import flatatt
ImportError: No module named util

一些程序员创建了一个库供python脚本使用。你的程序找不到那个库。所以翻译告诉你找不到。你有几个选择。要么你必须自己定义库和功能,要么你必须检查你试图运行的程序的指令和源代码,并试图找出什么是坏的,以防止包含库。或者最后一个选项是删除当前脚本中对该库的任何使用。

您可以自己定义模块,如下所示:

把这个放在util.py和widgets.py文件所在的目录中。

def flatatt(prompt):
    print("ok")

如果您定义了这个,您将得到一个不同的错误,脚本将导入您的库,并找到该方法,但随后将做错误的事情,因为设计该代码的程序员可能已经想到了其他一些功能。

你需要弄清楚你做错了什么,或者原来的程序员做错了什么,或者你的特定系统是如何不同的,才能使它工作。

通过滚动您自己的python模块,您可以进一步了解我在上面描述的内容:Python: How to import other Python files

通常情况下,这类错误是进入的障碍,原始开发人员不希望程序员不知道使用软件的integermodule之间的区别。因此,像这样的小问题被添加进来,以帮助鼓励您更好地理解隐藏的源代码。就像一个机械师通过更换配电盘盖上的电线帮助每个人变得更好。除非你正确地把它们换回来,否则这是行不通的。

在python中,您会得到以下重要信息:

Traceback (most recent call last):
  File "b.py", line 3, in <module>
    from util import flatatt
ImportError: No module named util

一些程序员创建了一个库供python脚本使用。你的程序找不到那个库。所以翻译告诉你找不到。你有几个选择。要么您必须自己定义库和功能,要么您必须检查要运行的程序的指令和源代码,并尝试找出损坏的部分以防止包含库。或者最后一个选项是删除当前脚本中对该库的任何使用。

您可以自己定义模块,如下所示:

把这个放在util.py和widgets.py文件所在的目录中。

def flatatt(prompt):
    print("ok")

如果您定义了这个,您将得到一个不同的错误,脚本将导入您的库,并找到该方法,但随后将做错误的事情,因为设计该代码的程序员可能已经想到了其他一些功能。

你需要弄清楚你做错了什么,或者原来的程序员做错了什么,或者你的特定系统是如何不同的,才能使它工作。

通过滚动您自己的python模块,您可以进一步了解我在上面描述的内容:Python: How to import other Python files

通常情况下,这类错误是进入的障碍,原始开发人员不希望程序员不知道使用软件的integermodule之间的区别。所以像这样的小问题被添加进来,以帮助鼓励您更好地理解隐藏的源代码。就像一个机械师通过更换配电盘盖上的电线帮助每个人变得更好。除非你正确地把它们换回来,否则这是行不通的。

Django是(ab?)使用Python的导入系统从django.forms.util导入某些内容。改为导入该模块。

相关问题 更多 >