如何使用 pip 在 Python3 上安装 Flask?

Posted

技术标签:

【中文标题】如何使用 pip 在 Python3 上安装 Flask?【英文标题】:How to install Flask on Python3 using pip? 【发布时间】:2014-08-22 22:01:47 【问题描述】:

我想尝试在 Python3 中使用 Flask。我在 Ubuntu 14.04 上安装了 Python 3.4,据说它附带了 pip。所以我尝试了

pip3 install flask

结束于:

Cleaning up...
Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_kramer65/flask/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-i98xjzea-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_kramer65/flask
Storing debug log for failure in /tmp/tmpqc3b2nu5

所以我尝试导入它,但无济于事:

kramer65@vps1:~/cxs$ python3
Python 3.4.0 (default, Apr 11 2014, 13:05:11)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'flask'

我当然可以下载并使用sudo python3 setup.py install 安装它,但我宁愿以“标准方式”进行安装,以便在生产机器上轻松、更标准地进行设置。

有人知道如何使用 Python3 和 pip 导入 Flask 吗?欢迎所有提示!

错误日志在http://pastebin.com/hd6LyVFP 中可用

【问题讨论】:

请把/tmp/tmpqc3b2nu5的内容贴出来。 @msvalkon - 内容非常多,所以我将其粘贴到了一个粘贴箱中:pastebin.com/hd6LyVFP 有什么想法吗? 【参考方案1】:

您似乎遇到了权限问题。从您粘贴到 pastebin 的日志中:

error: could not create '/usr/local/lib/python3.4/dist-packages/flask': Permission denied

这是因为pip 将尝试全局安装包,除非您指定某个安装位置。如果要全局安装,必须使用sudo 或以具有权限的用户身份安装。

尝试以下方法:

sudo pip3 install flask

或者指定到某个目录:

pip install -t <path> flask

但是,使用后一种方法,您必须始终注入sys.modules 的路径,所以我建议您尽可能使用sudo

或者更可取的是,使用virtualenv。 Virtualenv 允许您非常轻松地 打包您的应用程序以用于生产,因为您可以只安装您需要的包,因此您可以自动进行包隔离。生成requirements.txt 就像pip freeze &gt; requirements.txt 一样简单。请记住,如果您最终使用 virtualenv,则不得使用 sudo 安装软件包,因为它们随后将安装在 virtualenv 之外。

【讨论】:

【参考方案2】:

对于 Python 3.6.4 版本,可以通过以下方式安装 Flask:

sudo pip3.6 install flask

【讨论】:

以上是关于如何使用 pip 在 Python3 上安装 Flask?的主要内容,如果未能解决你的问题,请参考以下文章

从 3.4 升级后如何在 python3.5 中使用 pip?

如何在ubuntu上使用pip为python3升级matplotlib?

如何在 Ubuntu 上通过 pip 安装 python3 版本的软件包?

如何在 Ubuntu 上通过 pip 安装 python3 版本的软件包?

当同时安装Python2和Python3后,如何兼容并切换使用详解(比如pip使用)

如何在Python 3.6上安装PIP?