模块未找到错误:没有名为“cherrypy”的模块。

4
我将为您翻译此段内容。该内容涉及 IT 技术,需要安装 pgwatch2,其中需要安装一些 Python 模块。您使用的是 Python 3.6 版本,已经在本地安装了这些模块(下载了 tar 文件),并使用以下命令安装了这些模块:
pip3.6 install tar_file

当我确认所有东西都已安装后,我没有收到任何错误消息(第一个是CherryPy):

[webpy]# pip3.6 install -r requirements.txt 
Requirement already satisfied: cherrypy in /usr/local/lib/python3.6/site-packages (from -r requirements.txt (line 1))
Requirement already satisfied: jinja2 in /usr/local/lib/python3.6/site-packages (from -r requirements.txt (line 2))
Requirement already satisfied: psycopg2 in /usr/local/lib64/python3.6/site-packages (from -r requirements.txt (line 3))
Requirement already satisfied: influxdb in /usr/local/lib/python3.6/site-packages (from -r requirements.txt (line 4))
Requirement already satisfied: decorator in /usr/local/lib/python3.6/site-packages (from -r requirements.txt (line 5))
Requirement already satisfied: six>=1.11.0 in /usr/local/lib/python3.6/site-packages (from cherrypy->-r requirements.txt (line 1))
Requirement already satisfied: cheroot>=6.2.4 in /usr/local/lib/python3.6/site-packages (from cherrypy->-r requirements.txt (line 1))
Requirement already satisfied: portend>=2.1.1 in /usr/local/lib/python3.6/site-packages (from cherrypy->-r requirements.txt (line 1))
Requirement already satisfied: MarkupSafe>=0.23 in /usr/local/lib64/python3.6/site-packages (from jinja2->-r requirements.txt (line 2))
Requirement already satisfied: python-dateutil>=2.6.0 in /usr/local/lib/python3.6/site-packages (from influxdb->-r requirements.txt (line 4))
Requirement already satisfied: pytz in /usr/local/lib/python3.6/site-packages (from influxdb->-r requirements.txt (line 4))
Requirement already satisfied: requests>=2.17.0 in /usr/local/lib/python3.6/site-packages (from influxdb->-r requirements.txt (line 4))
Requirement already satisfied: backports.functools_lru_cache in /usr/local/lib/python3.6/site-packages (from cheroot>=6.2.4->cherrypy->-r     requirements.txt (line 1))
Requirement already satisfied: more_itertools>=2.6 in /usr/local/lib/python3.6/site-packages (from cheroot>=6.2.4->cherrypy->-r requirements.txt (line 1))
Requirement already satisfied: tempora>=1.8 in /usr/local/lib/python3.6/site-packages (from portend>=2.1.1->cherrypy->-r requirements.txt (line 1))
Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /usr/local/lib/python3.6/site-packages (from requests>=2.17.0->influxdb->-r requirements.txt (line 4))
Requirement already satisfied: idna<2.8,>=2.5 in /usr/local/lib/python3.6/site-packages (from requests>=2.17.0->influxdb->-r requirements.txt (line 4))
Requirement already satisfied: urllib3<1.24,>=1.21.1 in /usr/local/lib/python3.6/site-packages (from requests>=2.17.0->influxdb->-r requirements.txt (line 4))
Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.6/site-packages (from requests>=2.17.0->influxdb->-r requirements.txt (line 4))
Requirement already satisfied: jaraco.functools>=1.20 in /usr/local/lib/python3.6/site-packages (from tempora>=1.8->portend>=2.1.1->cherrypy->-r requirements.txt (line 1))

pip版本:

 pip3.6 --version
 pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)

然而,当我运行一个Python脚本作为安装步骤之一时,我遇到了下一个错误:
[webpy]# python3.6 web.py 
Traceback (most recent call last):
  File "web.py", line 9, in <module>
    import cherrypy
ModuleNotFoundError: No module named 'cherrypy'

你还有什么其他的想法可以检查吗?


1
你可能安装了多个版本的Python。尝试运行 python3.6 -m pip list 命令,并验证 cherrypi 是否在列表中。如果不在,请运行 python3.6 -m pip install -r requirements.txt 命令。 - Felix
python3.6 -m pip list 没有返回任何内容。 python3.6 -m pip install CherryPy-16.0.2.tar.gz 正在处理 ./CherryPy-16.0.2.tar.gz 无法导入安装源分发所需的 setuptools。 请安装 setuptools。但我已经安装了 setuptools... - JeyJ
1个回答

4

尝试以下方法以查找使用哪个 Python 安装程序 python3.6

(base) C:\Users\felix>python
Python 3.6.5 |Anaconda, Inc.| (default, Mar 29 2018, 13:32:41) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.executable
'C:\\Users\\felix\\Anaconda3\\python.exe'

现在你可能会得到一个不同于pip使用的路径/usr/lib/python3.6

有两个选项:

1. 运行pip使用的Python解释器

/usr/lib/python3.6 web.py

2. 安装你的软件包到通过python3.6调用的Python安装中

python3.6 -m pip install -r requirements.txt


但是正如您在我的主要帖子中所看到的,所有模块都安装在 /usr/local/lib/python3.6/site-packages 中。当我仅运行 python 时,它使用的是 python 2.7.5。似乎当我使用 /usr/bin/python3.6 web.py 时它可以工作,但是没有完整路径就无法工作。无论如何,谢谢! - JeyJ
如何为Python2.7完成此操作 - Trect
使用 python 代替 python3.6 - Felix

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接