如何在python中安装带有下划线的模块名称?

sim*_*ple 5 python import module init levenshtein-distance

我正在尝试安装 Levenshtein 模块,如您在此处看到的。

我能够setup.py通过 运行该文件python setup.py build

python然后,当我通过从终端立即进入 python 时,在与文件夹相同的文件夹中Levenshtein,我尝试导入它:

import Levenshtein,

但我收到以下错误:

    >>> import Levenshtein
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "Levenshtein/__init__.py", line 1, in <module>
    from Levenshtein import _levenshtein
ImportError: cannot import name _levenshtein
Run Code Online (Sandbox Code Playgroud)

并且,当我查看文件夹时Levenshtein,我看到两个与该名称相似的文件:

 _levenshtein.c   _levenshtein.h
Run Code Online (Sandbox Code Playgroud)

这个导入有什么意义,我应该如何获取名称为 的文件_levenshtein

sor*_*rin 0

我认为您将 pypi 包名称与模块名称混淆了,它们不是同一件事。

确实,大多数时候它们是相同的,因为两者使用相同的名称是有意义的。

尽管如此,大约 10-15% 的现有 pypi 软件包将安装具有不同名称的模块,有时多个模块作为同一软件包的一部分。

因此,您必须找到正在安装模块的 pypi 包的名称,仅此而已。