在 CentOS 7 / RHEL 7 上安装 Python 3.11

原文链接:https://computingforgeeks.com/install-python-3-on-centos-rhel-7/

Python 是一种高级解释性编程语言,已被用于各种应用程序开发,并在近年来获得了巨大的流行。Python 可用于编写广泛的应用程序,包括 Web 开发、数据分析、科学计算、人工智能、游戏等。由于其简单易用,它是初学者的理想语言。

Python 作为一种编程语言取得成功的一些因素包括:

  • 它是开源的:作为一种开源语言意味着任何人都可以访问和修改代码以满足其业务需求。
  • 它是面向对象的:Python 是一种面向对象的语言,这意味着 Python 中的一切都是对象。
  • 它是一种跨平台 语言:Python 代码可以在 Linux、Windows 和 macOS 等主要操作系统上运行。
  • 拥有 庞大的社区:Python 拥有一个庞大且活跃的开发人员社区,他们为其开发做出贡献并创建第三方库和工具。
  • 解释性 语言:Python 是一种解释性语言,意味着在运行代码之前无需编译代码。
  • 广泛的库:有大量的标准库和第三方库,这使得在Python中执行各种任务变得很容易。
  • 易于学习:Python 是一种深受初学者欢迎的语言,因为它具有简单易学的语法。

Python广泛应用于金融、医疗保健和科技等行业,并且由于其丰富的数据分析和可视化库和工具集而受到数据科学家和研究人员的欢迎。创建本内容时 Python 的最新稳定版本是 Python 3.11。

Python 3.11 特性和改进

  • 信息更丰富的错误回溯
  • 由于 Faster CPython 项目,代码执行速度更快。
  • 任务和异常组可简化异步代码的使用。
  • 新的类型功能可改进 Python 的静态类型支持。
  • 本机 TOML 支持使用配置文件。
  • 改进的类型变量 – PEP 646:可变参数泛型、PEP 673:自类型、PEP 675:任意文字字符串类型、PEP 681:数据类转换和PEP 655:将单个 TypedDict项目标记为必需或可能缺失。
  • Python 3.11 的启动时间更快。
  • 支持受 C++ 和 Java 等其他语言启发的零成本异常。
  • Python 3.11 支持异常注释以帮助向代码添加任意注释。
  • 用于浮点数表示的负零格式。

在本文中,我们将向用户展示如何在 CentOS 7 / RHEL 7 上安装和使用 Python 3.11。

在 CentOS 7 / RHEL 7 上安装 Python 3.11

Python 3.11 是一个重要的版本,引入了许多新功能和对该语言的改进。在本节中,我们将介绍在 CentOS 7 / RHEL 7 Linux 系统上安装 Python 3.11 的所有必要步骤。

第1步:更新系统

建议执行此步骤,但这是一个可选步骤。如果系统上正在运行其他应用程序并且担心依赖关系会破坏,则可以跳过此步骤。

sudo yum -y update

更新成功后,让我们重新启动系统。

sudo systemctl reboot

第2步:安装Python 3.11构建工具

Python 3.11 在 CentOS 7 / RHEL 7 存储库的官方存储库中不可用。我们将从源代码安装它,但在构建过程之前需要安装依赖包。

sudo yum -y install epel-release
sudo yum install wget make cmake gcc bzip2-devel libffi-devel zlib-devel

所有开发工具都可以使用以下命令从包组安装:

sudo yum -y groupinstall "Development Tools"

确认GCC版本:

$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

步骤 3:在 CentOS 7 / RHEL 7 上安装 OpenSSL 1.1

构建 Python 3.11 需要openssl 1.1.1或更高版本。系统存储库中可用的版本是旧的。

按照以下指南中的步骤在 CentOS 7 / RHEL 7 上安装和配置 OpenSSL 1.1.1:

  • 如何在 CentOS 7 / RHEL 7 上安装 OpenSSL 1.1.x

步骤 4:在 CentOS 7 / RHEL 7 上安装 Python 3.11

构建 Python 3.11 需要openssl 1.1.1或更高版本。系统存储库中可用的版本是旧的。

安装OpenSSL 1.1.1后,通过检查版本进行验证:

$ openssl version
OpenSSL 1.1.1t  7 Feb 2023

让我们下载Python 3.11源代码:

wget https://www.python.org/ftp/python/3.11.4/Python-3.11.4.tgz

提取下载的存档

tar xvf Python-3.11.4.tgz

导航到创建的目录。

cd Python-3.11*/

配置构建

LDFLAGS="${LDFLAGS} -Wl,-rpath=/usr/local/openssl/lib" ./configure --with-openssl=/usr/local/openssl 
make

在 CentOS 7 / RHEL 7 上安装 Python 3.11

sudo make altinstall

安装完成后,可以使用以下命令查看已安装的Python 3.11版本:

$ python3.11 --version
Python 3.11.4

验证 OpenSSL 库是否正常工作

$ python3.11
Python 3.11.4 (main, May 24 2023, 12:20:28) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
>>> ssl.OPENSSL_VERSION
'OpenSSL 1.1.1t  7 Feb 2023'
Use exit() or Ctrl-D (i.e. EOF) to exit
>>> Ctrl-D

步骤5:使用Pip3.11安装Python模块

Pip 在 Python 安装过程中安装。通过运行此命令检查安装的 pip 版本。

$ pip3.11 --version
pip 22.3.1 from /usr/local/lib/python3.11/site-packages/pip (python 3.11)

您可以将 Pip 包升级到最新版本:

pip3.11 install --upgrade pip

设置国内镜像:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple查看镜像地址:
pip config list

现在使用 PIP 安装任何模块。使用的命令语法如下:

sudo pip3.11 install <module-name>

例如:

sudo pip3.11 install awscli

结论

总之,Python 的多功能性、简单性及其功能使其成为任何想要学习或采用编程语言用于各种应用程序和项目的人的绝佳选择。有许多库、框架和工具可让您高效地构建创新应用程序。

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

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

相关文章

哈希表HashMap(基于vector和list)

C数据结构与算法实现&#xff08;目录&#xff09; 1 什么是HashMap&#xff1f; 我们这里要实现的HashMap接口不会超过标准库的版本&#xff08;是一个子集&#xff09;。 HashMap是一种键值对容器&#xff08;关联容器&#xff09;&#xff0c;又叫字典。 和其他容易一样…

FFDNet-pytorch版本代码训练教程

一、FFDNet-pytorch版本代码下载 (1)FFDNet-pytorch下载 https://download.csdn.net/download/qq_41104871/88233742 (2)FFDNet-pytorch版本代码运行环境配置 https://blog.csdn.net/qq_41104871/article/details/132497008 二、FFDNet-pytorch版本代码训练教程 (1)按…

Elasticsearch 7.6 - Springboot应用基础操作篇

ES 7.6 - JAVA应用基础操作篇 环境准备依赖配置 实体类准备使用说明索引/映射操作创建索引和映射索引和映射相关查询删除索引 文档操作插入数据更新数据删除数据批量操作 文档查询根据ID查询根据字段精准查询根据字段分词查询控制返回字段范围查询组合查询排序分页高亮搜索聚合…

大数据平台数据脱敏是什么意思?有哪些方案?

大数据平台包含了海量多样化数据&#xff0c;所以保障大数据平台数据安全非常重要&#xff0c;数据脱敏就是手段之一。今天我们就来简单聊聊大数据平台数据脱敏是什么意思&#xff1f;有哪些方案&#xff1f; 大数据平台数据脱敏是什么意思&#xff1f; 大数据平台数据脱敏简…

Linux 静态ip设置

在大多数基于Linux操作系统的设备&#xff08;包括树莓派&#xff09;上&#xff0c;你可以通过以下步骤设置静态IP地址。以下是在树莓派上设置静态IP地址的一般指令&#xff1a; 打开终端或SSH连接到你的树莓派。 编辑网络配置文件。根据不同的操作系统版本&#xff0c;网络配…

ADB入门教程

安卓开发 文章目录 安卓开发前言USB 连接链接 前言 基本用法 命令语法 adb 命令的基本语法如下&#xff1a; adb [-d|-e|-s <serialNumber>] <command>如果只有一个设备/模拟器连接时&#xff0c;可以省略掉 [-d|-e|-s ] 这一部分&#xff0c;直接使用 adb 。 为…

matlab使用教程(27)—微分代数方程(DAE)求解

1.什么是微分代数方程&#xff1f; 微分代数方程是一类微分方程&#xff0c;其中一个或多个因变量导数未出现在方程中。方程中出现的未包含其导数的变量称为代数变量&#xff0c;代数变量的存在意味着您不能将这些方程记为显式形式 y ′ f t , y 。相反&#xff0c;您可以…

安全学习DAY20_自动化工具项目武器库介绍

信息打点-自动化工具 文章目录 信息打点-自动化工具本节思维导图&概述 各类红蓝队优秀工具项目集合&#xff1a;All-Defense-Tool 自动化-武器库部署F8x 自动化信息搜集-网络空间AsamF 自动化信息搜集-企查信息ENScan 自动化信息搜集-综合架构-ARL&NemoARL灯塔Nemo_Go …

python读写json

python读写json 使用python读写json文件 # -*- coding : UTF-8 -*- # file : read_write_json.py # Time : 2023-08-31 16:46 # Author : wmzimport os import jsondef read_json():file_path "info.json"with open(file_path, "r") as f:info json…

(八)k8s实战-身份认证与权限

一、认证 User AccountsService Accounts Service Account 自动化&#xff1a; Service Account Admission ControllerToken ControllerService Account Controller 1、Service Account Admission Controller 通过 Admission Controller 插件来实现对 pod 修改&#xff0c…

javaCV实现java图片ocr提取文字效果

引入依赖&#xff1a; <dependency><groupId>org.bytedeco</groupId><artifactId>javacv-platform</artifactId><version>1.5.5</version></dependency> 引入中文语言训练数据集&#xff1a;chi_sim GitHub - tesseract-ocr…

网络综合布线专业技能人才培养方案

一、网络综合布线专业技能人才培养方案概述 网络综合布线专业技能人才培养方案旨在培养具备综合布线系统设计、安装与维护的全面技能和知识的专业人才。以下是一个概述&#xff1a; 培养目标&#xff1a;培养具备综合布线系统的理论基础和实践操作技能的专业人才&#xff0c;能…

使用postman做接口测试

1.接口测试&#xff1a;针对软件对外提供服务的接口的输入输出进行测试&#xff0c;以及接口间相互逻辑的测试&#xff0c;验证接口功能与接口描述文档的一致性 2.接口测试流程&#xff1a; 1&#xff09;获取接口信息&#xff1a;通过接口文档或抓包来获取接口的基本调用方式和…

go中的结构体

结构体的定义 以学生结构体为例&#xff0c;如下&#xff1a; type Student struct {name stringage int } 同类型的可以写在一行&#xff1a; type Student struct {name,course stringage int } 结构体初始化 方法1:使用var关键字 package mainimport "fmt&quo…

oracle怎么删除表索引

Oracle是目前常用的企业级关系型数据库管理系统&#xff0c;用于存储和管理大量数据。在Oracle中&#xff0c;表索引是用于提高查询效率的重要组成部分&#xff0c;但也有时候需要删除表索引。本文将介绍如何在Oracle中删除表索引。 一、查看表索引 在删除表索引之前&#xff…

uniapp 微信小程序 锚点跳转

uniapp文档 以下是我遇到的业务场景&#xff0c;是点击商品分类的某一类 然后页面滚动至目标分类&#xff0c; 首先第一步是设置锚点跳转的目的地&#xff0c;在目标的dom上面添加id属性 然后给每个分类每一项添加点击事件&#xff0c;分类这里的item数据里面有一字段是和上…

SpringBoot初级开发--多环境配置的集成(9)

在Springboot的开发中&#xff0c;我们经常要切换各种各样的环境配置&#xff0c;比如现在是开发环境&#xff0c;然后又切换到生产环境&#xff0c;这个时候用多环境配置就是一个明智的选择。接下来我们沿用上一章的工程来配置多环境配置工程。 1.准备多环境配置文件 这里我…

Flutter 安装教程 + 运行教程

1.下载依赖 https://flutter.cn/docs/get-started/install/windows 解压完后根据自己的位置放置&#xff0c;如&#xff08;D:\flutter&#xff09; 注意 请勿将 Flutter 有特殊字符或空格的路径下。 请勿将 Flutter 安装在需要高权限的文件夹内&#xff0c;例如 C:\Program …

Redis 教程 - 主从复制

Redis 教程 - 主从复制 Redis 支持主从复制&#xff08;Master-Slave Replication&#xff09;&#xff0c;通过主从复制可以将一个 Redis 服务器&#xff08;主节点&#xff09;的数据复制到其他 Redis 服务器&#xff08;从节点&#xff09;&#xff0c;以实现数据的冗余备份…

Unity List相关问题

1、list随机数值&#xff0c;重复的数量不超过指定大小。 using System.Linq; private List<int> iconIndexs; for (int i 0; i < 5; i) {int newIndex Random.Range(0, 3);// 检查列表中已有的相同元素的数量int count iconIndexs.Count(x > x newIndex);// …