参考链接:http://www.jb51.cc/article/p-mkczjrpb-bbo.html
ubuntu14.04下搭建python环境:
python是ubuntu下自带的2.7,使用python --version可以查看
下面安装pip,pip是python的包管理工具,建议Python的所有包都用pip进行管理(为什么这么建议,我也不知道,)
1 //很多pip安装的包都需要libssl和libevent编译环境
2 sudo apt-get install build-essential libssl-dev libevent-dev libjpeg-dev libxml2-dev libxslt-dev
1 //安装 pip
2 sudo apt-get install python-pip
然后使用如下命令进行更新下:
pip install --upgrade pip
升级遇到问题
Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py",line 122,in main
status = self.run(options,args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py",line 278,in run
requirement_set.prepare_files(finder,force_root_egg_info=self.bundle,bundle=self.bundle)
File "/usr/lib/python2.7/dist-packages/pip/req.py",line 1198,in prepare_files
do_download,
File "/usr/lib/python2.7/dist-packages/pip/req.py",line 1376,in unpack_url
self.session,
File "/usr/lib/python2.7/dist-packages/pip/download.py",line 572,in unpack_http_url
download_hash = _download_url(resp,link,temp_location)
File "/usr/lib/python2.7/dist-packages/pip/download.py",line 433,in _download_url
for chunk in resp_read(4096):
File "/usr/lib/python2.7/dist-packages/pip/download.py",line 421,in resp_read
chunk_size,decode_content=False):
File "/usr/share/python-wheels/urllib3-1.7.1-py2.py3-none-any.whl/urllib3/response.py",line 225,in stream
data = self.read(amt=amt,decode_content=decode_content)
File "/usr/share/python-wheels/urllib3-1.7.1-py2.py3-none-any.whl/urllib3/response.py",line 174,in read
data = self._fp.read(amt)
File "/usr/lib/python2.7/httplib.py",line 602,in read
s = self.fp.read(amt)
File "/usr/lib/python2.7/socket.py",line 380,in read
data = self._sock.recv(left)
File "/usr/lib/python2.7/ssl.py",line 341,in recv
return self.read(buflen)
File "/usr/lib/python2.7/ssl.py",line 260,in read
return self._sslobj.read(len)
SSLError: The read operation timed out
Storing debug log for failure in /home/lsp/.pip/pip.log
是因为权限不够,加上sudo即可:sudo pip install --upgrade pip
如果还是有问题试试下面的命令(没有亲测):
sudo python -m pip install -U pip
sudo pip install -U pip
更新完之后版本:
➜ pip --version
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)
安装python用到的包文件:
安装NumPy
sudo pip install -U numpy
安装Python的科学库
sudo pip install -U scipy
安装matplotlib
sudo apt-get install libpng-dev libjpeg8-dev libfreetype6-dev
sudo pip install -U matplotlib
我们将继续安装数据分析和机器学习库pandas和scikit-learn.
sudo pip install -U scikit-learn
sudo pip install -U pandas
每个安装包,都可以通过进入python使用import 包名 查看是否安装
python
import 包名
➜ 安装scipy: sudo pip install scipy出现如下错误
The directory '/home/lsp/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo,you may want sudo's -H flag.
The directory '/home/lsp/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo,you may want sudo's -H flag.
Collecting scipy
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:318: SNIMissingWarning: An HTTPS request has been made,but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate,which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information,see https://urllib3.readthedocs.io/en/latest/security.html#snimissingwarning.
SNIMissingWarning
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information,see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
Could not find a version that satisfies the requirement scipy (from versions: )
No matching distribution found for scipy
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information,see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
InsecurePlatformWarning
使用命令成功 sudo pip install -U scipy
若出现如下错误:
decode_content=False):
File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/response.py",line 357,decode_content=decode_content)
File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/response.py",line 324,in read
flush_decoder = True
File "/usr/lib/python2.7/contextlib.py",line 35,in __exit__
self.gen.throw(type,value,traceback)
File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/response.py",line 246,in _error_catcher
raise ReadTimeoutError(self._pool,None,'Read timed out.')
ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org',port=443): Read timed out. 使用pip --default-timeout=100 install -U pip命令用以加大超时时间可以解决。 原文链接:/ubuntu/350750.html