CentOS升级Python2.7及安装pip

CentOS升级Python2.7及安装pip<?xml version="1.0" encoding="UTF-8"?>

CentOS升级Python2.7及安装pip

1) 升级Python2.7

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
python -V  # 查看版本:Python 2.6.6
mkdir -p ~/Env/python; cd ~/Env/python  # 创建个目录
wget --no-check-certificate https://www.python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
tar Jxvf Python-2.7.6.tar.xz
cd Python-2.7.6
./configure --prefix=/usr/local/py-2.7.6  # "./configure -h"查看帮助
make  # 报模块缺失时,有需要的安装后重make
# issue: INFO: Can't locate Tcl/Tk libs and/or headers
#        Python build finished, but the necessary bits to build these modules were not found:
#        ...
# 注1:zlib必要,之后安装setuptools要用。见"安装setuptools"
# 注2:openssl必要,之后pip要用。见"安装pip"
# 注3:bzip2也最好加,执行"yum install bzip2 bzip2-devel -y"
make install
# 建立软链接,默认指向Python2.7
mv /usr/bin/python /usr/bin/python2.6.6
ln -s /usr/local/py-2.7.6/bin/python2.7 /usr/bin/python
python -V  # Python 2.7.6
# yum不兼容Python2.7,需要指定为原版本
vi /usr/bin/yum
# 将"!/usr/bin/python"改为"!/usr/bin/python2.6.6"
# ibus也不兼容Python2.7,需要修改
# 将"exec python"改为"exec python2.6.6"
ll /usr/bin | grep python  # 确认下python2.6.6
vi /usr/bin/ibus-setup  # 修改
vi /usr/libexec/ibus-ui-gtk  # 修改
reboot  # 可能需要重启

2) 准备基础环境

2.1) 安装setuptools

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
cd ~/Env/python
wget http://pypi.douban.com/packages/source/s/setuptools/setuptools-3.3.tar.gz  # 豆瓣源
tar zxvf setuptools-3.3.tar.gz
cd setuptools-3.3
python setup.py build
sudo python setup.py install
# 或者用ez_setup.py,同样改为豆瓣源
# wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
# python ez_setup.py --download-base http://pypi.douban.com/packages/source/s/setuptools/
# 缺少zlib,安装setuptools时出错。
# issue: RuntimeError: Compression requires the (missing) zlib module
yum install zlib zlib-devel -y
# 重make Python2.7再安装
cd ../Python-2.7.6
make  # 这时才注意先前make时缺了好多模块
make install
# 环境变量
vi /etc/profile
# 添加如下内容:
# PY_HOME=/usr/local/py-2.7.6
# export PATH=$PY_HOME/bin:$PATH
source /etc/profile  # 当前终端生效,reboot后才会完全生效
echo $PATH

2.2) 安装pip

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
easy_install -i http://pypi.douban.com/simple pip
# 缺少ssl模块,pip使用时出错
# issue: ImportError: cannot import name HTTPSHandler
yum install openssl openssl-devel -y
make  # Python-2.7.6目录
make install
# 配置pip为豆瓣源
mkdir ~/.pip  # ls或ll -a 查看隐藏内容
vi ~/.pip/pip.conf
# 添加如下内容:
# [global]
# index-url = http://pypi.douban.com/simple

2.3) 安装virtualenv

?
1
2
3
su
pip install virtualenv
pip install virtualenvwrapper

virtualenv用于创建隔离的Python运行环境,依赖不同库和版本时避免混乱。

virtualenvwrapper为virtualenv上的扩展,提供更方便的命令。

2.4) 其他

Document

  • Sphinx
    • 'pip install Sphinx'

Network

  • Twisted
    • 'pip install Twisted'
    • zope.interface
  • Scrapy
    • 'pip install Scrapy'

Web framework

  • Django
    • 'pip install Django'
  • Tornado
    • 'pip install tornado'
  • Flask
    • 'pip install Flask'




来自为知笔记(Wiz)


转载于:https://www.cnblogs.com/highroom/p/a41f335dc3880bba1e10a0d954241a1c.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/291864.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决Maven工程中报 Missing artifact jdk.tools:jdk.tools

2019独角兽企业重金招聘Python工程师标准>>> 解决方法&#xff1a; 在pom.xml中添加如下依赖&#xff1a; <dependency> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> <version>…

回到地球之后,这个男人创建了Ubuntu

文 | 大东出品 | OSC开源社区&#xff08;ID&#xff1a;oschina2013&#xff09;2002 年&#xff0c;莫斯科当地时间 4 月 25 日 9 时 26 分&#xff0c;满载着补给和 3 名宇航员的“联盟-TM 号”航天飞船在“联盟 U”火箭的推进下飞往国际空间站。同行的三人中&#xff0c;年…

Hadoop完全分子式环境搭建—问题及解决办法

Hadoop完全分布式环境搭建 ps:本人是按照尚硅谷的教程搭建的&#xff0c;版本hadoop2.7&#xff0c;centos版本6&#xff0c;一台主机&#xff0c;两台从机。 一&#xff0e;版本问题 1.尽量使用hadoop版本2&#xff0c;尽量不要使用最新版本3。因为会出现无法解决的问题&…

linux c之perror和exit使用总结

一、perror介绍 perror函数用一种简单统一的方式报告错误。例如,一个程序试读一个不存在的磁盘文件,操作系统除了“出错了!”,这时,库函数首先会将代表操作出错的具体原因的错误代码保存到全局整型变量errono(在errno.h中定义),然后它再将错误提示传给用户程序。perror…

autoload.php beanbun_Beanbun: 简单开放的 PHP 爬虫框架

BeanbunBeanbun 是用 PHP 编写的多进程网络爬虫框架&#xff0c;具有良好的开放性、高可扩展性。项目地址&#xff1a;github.com/kiddyuchin.…文档地址&#xff1a;beanbun.org由来我希望有这样一个爬虫框架&#xff1a;在简单需求的情况下&#xff0c;可以用最少的代码快速建…

Andorid Binder进程间通信---总结

一、Server和Service Manager进程间通信 Service Manager进程启动时&#xff0c;已经创建了Service Manager实体对象&#xff0c;没有Service Manager本地对象。 Server首先获取了Server代理对象&#xff0c;句柄值为0。没有Server引用对象。 Server----->Service Manager S…

POJ 2135 最小费用最大流

思路&#xff1a; 源->1连费用0 流量2 其它的边 费用w 流量1 n->汇 费用0 流量2 最小费用流 搞定~ //By SiriusRen #include <queue> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define N 2010 #def…

06-广度优先搜索:图、队列

数据结构和算法 基于《算法图解》—Aditya Bhargava 和《数据结构》—严蔚敏 第6章广度优先搜索 6.1 简介 广度优先搜索—breadth-first search&#xff0c;BFS. 主要内容图和队列。 广度优先搜索能让你能够找出两样东西之间的最短距离&#xff0c;比如&#xff1a;编写国际跳…

[转]Displaying standard DataTables in MVC

本文转自&#xff1a;http://stackoverflow.com/questions/2243898/displaying-standard-datatables-in-mvc Controller action:public ActionResult Index() {ViewData["Message"] "Welcome to ASP.NET MVC!";DataTable dt new DataTable("MyTable…

linux c之解决使用socket函数返回为0的问题

1、问题&#xff1a; 在 linux 平台下 写socket&#xff0c;实现简单的tcp通信&#xff0c;服务端第一次调用 socket函数返回 0 2、找原因&#xff1a; 我的代码是这样写的 if ((server_sockfd socket(AF_INET,SOCK_STREAM, 0) < 0)); 特么总是返回0&#xff0c;日了狗 自…

网站增加打赏功能

1、前提条件&#xff1a; 设置——博客设置——博客侧边栏公告&#xff08;支持HTML代码&#xff09;后面的如果是“申请开通”&#xff0c;必须先申请开通&#xff1b;如果是“支持js代码”&#xff0c;那就代表你已经开通过了&#xff0c;有写js代码的权限了 2、准备材料&…

虎年云原生落地技术趋势

今天是立春&#xff0c;虎年第一天。去年我写过一篇 牛年 dotnet云原生技术趋势[1]&#xff0c;今天再来写一篇虎年云原生落地技术趋势&#xff0c;去年局限在.NET 平台上的云原生落地&#xff0c;我今年在去年探索云原生落地的基础上从多语言云原生技术落地的趋势来谈谈。在 2…

WdatePicker 设置日期第一个比第二个的日期小

WdatePicker 设置日期第一个比第二个的日期小 可以设置&#xff0c;日期只显示某一天的&#xff0c;比如只显示周一&#xff0c;和周日 <input id"Text1" class"Wdate" onFocus"WdatePicker({disabledDays:[0,2,3,4,5,6],maxDate:#F{$dp.$D(\Text2…

excel中调用python程序_一篇文章带你使用Python搞定对Excel表的读写和处理

文章目录一、我的需求二、代码三、总结一、我的需求我想要excel 的最后1列由列表形式转换为数值类型​可以看到最后一列有的是列表&#xff0c;有的直接是数值&#xff0c;想要整个列表中的内容都转为数值类型二、代码import openpyxldef write_excel_xlsx():# 写入数据准备wor…

07-狄克斯特拉算法

数据结构和算法 基于《算法图解》—Aditya Bhargava 和《数据结构》—严蔚敏 第7章 狄克斯特拉算法 上一章的广度优先搜索&#xff0c;找出的是段数最少的路径&#xff1b; 本章狄克斯特拉算法&#xff0c;找出的是最快的路径。 7.1 使用狄克斯特拉算法 步骤&#xff1a; 第…

linux c之使用共享内存实现进程间通信

这篇博客有别人的也有自己改的,作为读书笔记,勿喷。 1、共享内存的介绍 共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段…

【转】你没有变强是因为你一直很舒服

这个世界上有两种人&#xff0c;一种人是强者&#xff0c;一种人是弱者。强者给自己找不适&#xff0c;弱者给自己找舒适。想要变得更强&#xff0c;就必须要学会强者的必备技能&#xff0c;那就是让不适变得舒适。 如果你学会了这种技能&#xff0c;你可以搞定很多事情&#x…

linux网络编程之套接字(套接口)、ip、端口理解

1、套接字、ip、端口介绍 1)、套接字 源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务。 它是网络通信过程中端点的抽象表示,包含进行网络通信必需的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远…

聊聊mysql执行过程

在项目开发当中 &#xff0c;很多时候&#xff0c;我们的数据库应用优化都是从表层到里层的一个过程。比如一个查询写下来 &#xff0c;我们的优化方向大多时候都是先看方法执行的时间长短&#xff0c;然后再决定是否去优化它&#xff0c;下意识的第一步操作都是看是否命中索引…

01. Node js Hello world

2019独角兽企业重金招聘Python工程师标准>>> 01. Node js Hello world 环境安装 官网http://nodejs.org/ Node.js is a platform built on Chromes JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, no…