【问题标题】:How to properly import a library (?) in Python [closed]如何在 Python 中正确导入库(?)
【发布时间】:2013-08-17 00:20:57
【问题描述】:

我一直在尝试使用此处提供的 tldextract 库。

经过多次尝试,我能够安装它。但是,现在在运行主文件时,编译器说它找不到对我的库的任何引用。在我使用的代码下方并引发异常。

import tldextract

我很欣赏这是一个非常基本的问题,它与我尝试使用的库并不完全相关,但我想知道您是否可以指出如何“链接”或确保编译器知道的方向我有那个图书馆。

据我所知,只要站点包文件夹中有一个库可用,这应该可以解决问题。

在我的情况下,文件位于

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tldextract

所以理论上这应该是可以的,但是当我尝试使用它时出现以下错误。

  Traceback (most recent call last):
  File "test.py", line 12, in <module>
  import tldexport
ImportError: No module named tldexport

我希望这个问题不会因为它的简单而让您感到不安。毕竟我是来学习的。

谢谢

【问题讨论】:

  • 那么是 tldexport 还是 tldextract?
  • 如果不是明显的拼写错误,下一个最明显的可能性是您可能安装了两个(或更多)Python 2.7。这对于 Mac 用户来说很常见,因为那里的所有博客文章都告诉你在 Apple 已经给你的 Python 旁边安装第二个 Python。如果你这样做,很容易为一个 Python 副本安装一个模块,然后尝试将它与另一个副本一起使用。 (例如,您的sudo pip install tldextract,您的/usr/local/bin/pip 来自额外的Python 2.7,您的/usr/bin/python 来自Apple 安装的Python 2.7。)
  • 帕维尔,你说得对。这是我的错。导入正确的库它可以工作:(为愚蠢的票友道歉。但非常有用的见解,至少我学到了一些新东西。
  • 整个问题来自 OP 在他的程序中写的一个非常具体的错字。 (之前这将是一个“过于本地化”)

标签: python shared-libraries


【解决方案1】:

根据错误代码,文件 test.py 正在调用名为 'tldexport' 的模块

如果这是一个依赖项,请安装它。

如果是 tldextract 的拼写错误,请更改它:)

【讨论】:

  • 你是绝对正确的。这是我的错。导入正确的库它可以工作:(为愚蠢的票友道歉。但非常有用的见解,至少我学到了一些新东西。
【解决方案2】:

The docs on the Python import system 很好。你应该检查出来。我建议阅读全部内容。你会很高兴你这样做了,你对进口的大部分挫败感都会得到解决。就像@Dreadful_Code 说的那样,要么纠正错字,要么改变它。如果'tldexport' in sys.pathTrue,那么事情应该会顺利进行; tldextract 或您想在解释器内部使用的任何 Python 模块也是如此。

【讨论】:

    猜你喜欢
    • 2020-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-19
    相关资源
    最近更新 更多