metaheuristic-algorithms-python 抛出导入错误,但确实已安装(此包仅在 python3 中测试,我使用的是 python 2.7)
metaheuristic-algorithms-python throws import error but is definitely installed (this package is only tested in python3 and I'm using python 2.7)
我在 python 中安装后无法导入 metaheuristic-algorithms-python 库。为什么这不起作用?它安装在我的站点包中,但无法导入。文档说这仅针对 python3 进行了测试。查看代码,看起来这应该适用于 python 2.7。怎么回事?
$ virtualenv working
$ . working/bin/activate
$ pip install metaheuristic-algorithms-python
$ ls working/lib/python2.7/site-packages/metaheuristic_algorithms
base_algorithm.py command_line.pyc function_wrappers harmony_search.py simplified_particle_swarm_optimization.pyc version.py
base_algorithm.pyc firefly_algorithm.py genetic_algorithm.py harmony_search.pyc simulated_annealing.py version.pyc
command_line.py firefly_algorithm.pyc genetic_algorithm.pyc simplified_particle_swarm_optimization.py simulated_annealing.pyc
$ working/bin/python -c "import metaheuristic_algorithms"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named metaheuristic_algorithms
你知道他们怎么说不支持 Python 2 吗?好吧,这是在 Python 3 而不是 Python 2 上工作的事情之一。具体来说,这个包没有 __init__.py
.
在 Python 3 上,没有 __init__.py
的包是 namespace package,一种与常规包的工作方式略有不同的包。在 Python 2 上,没有 __init__.py
的文件夹甚至不是包。你不能导入这个东西,因为 Python 不认为它是一个包。
我在 python 中安装后无法导入 metaheuristic-algorithms-python 库。为什么这不起作用?它安装在我的站点包中,但无法导入。文档说这仅针对 python3 进行了测试。查看代码,看起来这应该适用于 python 2.7。怎么回事?
$ virtualenv working
$ . working/bin/activate
$ pip install metaheuristic-algorithms-python
$ ls working/lib/python2.7/site-packages/metaheuristic_algorithms
base_algorithm.py command_line.pyc function_wrappers harmony_search.py simplified_particle_swarm_optimization.pyc version.py
base_algorithm.pyc firefly_algorithm.py genetic_algorithm.py harmony_search.pyc simulated_annealing.py version.pyc
command_line.py firefly_algorithm.pyc genetic_algorithm.pyc simplified_particle_swarm_optimization.py simulated_annealing.pyc
$ working/bin/python -c "import metaheuristic_algorithms"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named metaheuristic_algorithms
你知道他们怎么说不支持 Python 2 吗?好吧,这是在 Python 3 而不是 Python 2 上工作的事情之一。具体来说,这个包没有 __init__.py
.
在 Python 3 上,没有 __init__.py
的包是 namespace package,一种与常规包的工作方式略有不同的包。在 Python 2 上,没有 __init__.py
的文件夹甚至不是包。你不能导入这个东西,因为 Python 不认为它是一个包。