CentOS7安装Python3,开发SocketIO 客户端

参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573


步骤一 查询当前版本

查询当前机器上的Python版本

[root@localhost bin]# cd /usr/bin
[root@localhost bin]# ll python*
lrwxrwxrwx root root 4月 : python -> python2
lrwxrwxrwx root root 4月 : python2 -> python2.
-rwxr-xr-x root root 4月 : python2.
-rwxr-xr-x root root 4月 : python2.-config
lrwxrwxrwx root root 4月 : python2-config -> python2.-config
lrwxrwxrwx root root 4月 : python-config -> python2-config

可以看到,python指向的是python2,python2指向的是python2.7,因此我们可以装个python3,然后将python指向python3,然后python2指向python2.7,那么两个版本的python就能共存了。

步骤二 安装pip【可选】

【如果安装了宝塔等环境,此步骤省略】

# 运行这个命令添加epel扩展源
yum -y install epel-release # 安装pip
yum install python-pip

步骤三 编译安装Python3

安装依赖项

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel readline-devel tk-devel gcc make

安装sqlite【如果需要使用sqlite数据库则安装,否则可省略】

yum install sqlite,sqlite-devel

下载编译安装 python3,如果没安装 wget,执行如下命令安装 wget

yum install wget
# 下载
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
# 解压
xz -d Python-3.6..tar.xz
tar -xf Python-3.6..tar #进入解压后的目录,依次执行下面命令进行手动编译
cd Python-3.6.
# 配置 自定义安装目录为:/usr/local/python3
./configure prefix=/usr/local/python3
# 编译安装
make && make install

如果最后没提示出错,就代表正确安装了,在/usr/local/目录下就会有python3目录。

步骤四 添加软链接 【可选】

【如果安装了宝塔等环境,此步骤省略】

#将原来的链接备份
mv /usr/bin/python /usr/bin/python.bak
mv /usr/bin/pip /usr/bin/pip.bak #添加python3的软链接
ln -s /usr/local/python3/bin/python3. /usr/bin/python
#添加pip3的软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip #测试是否安装成功了
python -V

步骤五 更改Yum配置【可选】

因为yum要使用python2才能执行。

vi /usr/bin/yum
把#! /usr/bin/python修改为#! /usr/bin/python2 vi /usr/libexec/urlgrabber-ext-down
把#! /usr/bin/python 修改为#! /usr/bin/python2

步骤六 升级 pip【可选】

wget https://bootstrap.pypa.io/get-pip.py  --no-check-certificate
python get-pip.py

安装 python-socketio

安装 python-socketio

/usr/local/python3/bin/pip3 install python-socketio

python-socketio 使用文档:https://python-socketio.readthedocs.io/en/latest/client.html

安装 pymysql

/usr/local/python3/bin/pip3 install pymysql

开发基于 python3 + python-socket 应用

第一行:/usr/local/python3/bin/python3.6 为自定义的Python3的可执行文件地址

#! /usr/local/python3/bin/python3.6

import socketio

server = 'http://localhost:12345'

sio = socketio.Client()

@sio.on('connect')
def on_connect():
print('[SOCKETIO] connected to server ' + server) @sio.on('disconnect')
def on_disconnect():
print('[SOCKETIO] disconnected from server') if __name__ == '__main__':
sio.connect(server)
sio.wait()

第一种执行脚本方法:

/usr/local/python3/bin/python3. test.py

第二种执行脚本方法:

chmod  test.py
./test.py

CentOS7 安装Python3,开发SocketIO 客户端的更多相关文章

  1. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  2. centos7 安装 python3.5

    centos7 安装 python3.5 一. python虚拟环境virtualenv VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前 ...

  3. Centos7 安装python3

    Centos7 安装python3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #安装sqlite-devel yum -y ...

  4. centos7安装 python3.6,且保留2.7版本

    CENTOS7安装PYTHON3.6 1. 安装python3.6可能使用的依赖# yum install openssl-devel bzip2-devel expat-devel gdbm-dev ...

  5. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  6. centos7安装python3.7

    Centos7安装Python3的方法   由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_ ...

  7. CentOS7 安装Python3.6.8

    CentOS7 安装Python3.6.8 1. 安装依赖环境 yum -y groupinstall "Development tools" yum -y install zli ...

  8. 解决Centos7安装python3后pip工具无法使用

    问题描述: Centos7安装python3,正常流程全部配置完成,python3,pip3的软链接也建立了 但是python3可以正常使用,而pip3报错,无法找到文件或目录 解决方法: which ...

  9. centos7安装python3.6独立的virtualenv环境

    centos7安装python3.6独立的virtualenv环境 1.编译安装python3.6环境# 安装依赖yum -y install zlib-devel bzip2-devel opens ...

随机推荐

  1. Java 多线程 ReadWriteLock

    ReadWriteLock是JDK 1.5提供的读写分离锁,可以减少锁竞争.例如,线程A1.A2和A3进行写操作,线程B1.B2和B3进行读操作,如果使用重入锁或者内部锁,那么理论上所有读之间.读与写 ...

  2. Java 构造器 遇到多个构造器时要考虑用构建器

    静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数. 当一个类中有若干个必选属性和多个可选属性时,采用重叠构造器模式.JavaBeans模式或者Builder模式,但各有优劣. 当 ...

  3. hadoop实现倒排索引

    hadoop实现倒排索引 本文用hadoop实现倒排索引算法,用基本的分两步完成,不使用combine 第一步 读入文档,统计文档中各个单词的个数,与word count类似,但这里把word-fil ...

  4. day8网络编程,面向对象1

    一.只是回顾 1.导入模块的顺序,首先从当前目录下找,再从环境变量里面找,使用"sys.path.insert(0,'需要导入的环境变量')"加入需要导入文件的环境变量; 2.如果 ...

  5. 匈牙利算法--java

    先上例题 杭电acm 2063 :http://acm.hdu.edu.cn/showproblem.php?pid=2063 bool 寻找从k出发的对应项出的可增广路 { while (从邻接表中 ...

  6. JS_高程5.引用类型(1)Object类型

    引用类型 在ECMASCript中,引用类型是一种数据结构,将数据和功能组织在一起,引用类型有时候也被称为对象定义,因为它们描述的是一类对象所具有的属性和方法.(注意:尽管ECMAScript从技术上 ...

  7. Docker卸载高版本重装低版本后启动提示:driver not supported

    解决方法: mv /var/lib/docker /var/lib/docker.old 其实就是docker镜像文件夹目录作怪,新版本的目录无法与旧版本目录相兼容. 不过建议降级的用户这样操作: y ...

  8. pygame-KidsCanCode系列jumpy-part6-主角挂掉重新开始

    游戏的虚拟世界中,最让人happy的一个因素就是主角挂了,而且重来,只要restart就行了,不象现实中人的生命只有1次.回顾上节的效果,如果方块向下落时,挡板没接住,整个游戏就跪了: 如果我们希望方 ...

  9. Wpf 之Canvas介绍

    从这篇文章开始是对WPF中的界面如何布局做一个较简单的介绍,大家都知道:UI是做好一个软件很重要的因素,如果没有一个漂亮的UI,功能做的再好也无法吸引很多用户使用,而且没有漂亮的界面,那么普通用户会感 ...

  10. React进阶之高阶组件

    前言 本文代码浅显易懂,思想深入实用.此属于react进阶用法,如果你还不了解react,建议从文档开始看起. 我们都知道高阶函数是什么, 高阶组件其实是差不多的用法,只不过传入的参数变成了react ...