Python酷玩之旅_如何在Centos8顺利安装Python最新版(3.12)

前言

博主准备在Centos8部署一套Python环境,历经千辛万苦,终于成功了。在安装过程中遇到的“坑”也是各种各样,现做一记录,分享各位,避免浪费时间。
在这里插入图片描述

Q:如何在Centos8顺利安装Python最新版

博主以3.12版本为例,进行步骤分解,请紧随,防迷路。

一. 下载安装包

下载安装包有两种方式,一种通过wget完成,另一种通过官网下载tar包。两种方式可通过以下步骤完成:

1.1 wget

选择一个目录,执行wget :

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

过程如下:
在这里插入图片描述
下载完成后,会在当前运行目录下,生成一个tgz文件: Python-3.12.1.tgz

1.2. 官网下载

打开官网下载地址,可以看到:

在这里插入图片描述

向下滑动,选择Files中的第一个文件,点击下载:

在这里插入图片描述
下载完成后,同样可得到一个文件:
在这里插入图片描述

由此看出,不管用哪种方式,殊途共归,自己选吧。

二. 执行安装

2.1. 检查环境

在安装前,先检查一下当前环境是否已安装(centos8默认已安装了python):
在这里插入图片描述
该环境不可用,但是不建议卸载,无视它即可。

2.2. 安装依赖

在正式安装python前,先安装它的依赖(非常重要,非常关键,不跑偏 ):

yum install -y gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel xz-devel libffi-devel
2.3. 解压tgz包

执行以下命令:

tar -zxvf Python-3.12.1.tgz

解压后得到一个文件夹:Python-3.12.1
在这里插入图片描述

2.4. 编译

cd Python-3.12.1,执行如下命令:

./configure --prefix=/usr/local/bin/python3.12 --enable-optimizations

其中的2个参数很重要,可以了解一下:

命令用途
–prefix指定编译后的安装路径
–enable-optimizations启用优化,对Python优化以提高性能
2.5. 安装

上一步正常完成后,开始安装,执行如下命令:

make && make install

画面最后可以看到一行Successfull,代表安装成功啦!

在这里插入图片描述
但是请注意WARNING,提示PATH没有环境变量。

2.6. 设置环境变量
2.6.1 编辑/etc/profile
vi /etc/profile

输入-i后,在文末加入:

# PYTHON_HOME与./configure指定的目录保持一致
PYTHON_HOME=/usr/local/bin/python3.12
export PATH=$PATH:$PYTHON_HOME/bin

ctrl+c后,输入:wq,退出编辑。

2.6.2 激活生效

通过source命令,激活变量,使之生效:

source /etc/profile

输入python3.12,即可看到当前的版本号,代表安装成功:
在这里插入图片描述

三. 操作示例

3.1. helloworld

安装完成后,我们做一个验证,写个hello world吧。输入python3.12,进入python console

在这里插入图片描述
至此,完成了Python环境的所有安装工作。


结语

本文重点介绍了Python最新版的安装过程,逐一分解,操作简便。在linux环境中,你可以安装需要的库,进行下一步的开发喽。

走过的、路过的盆友们,点点赞,收收藏,并加以指导,以备不时之需哈~


在这里插入图片描述

<think>嗯,用户想用date-fns来格式化日期,需要方法和示例代码。首先,我应该回忆一下date-fns的基本用法。记得date-fns是一个模块化的库,可以按需导入函数,这样能减少打包体积。用户提到要格式化日期,所以肯定需要用到format函数。 根据引用[1]和引用[3],format函数是从date-fns/format中引入的,然后传入Date对象和格式字符串。比如,像format(new Date(), &#39;yyyy-MM-dd HH:mm&#39;)。要注意的是,格式字符串的大小写,比如月份MM是大写的,分钟是mm,而小时如果是24小时制的话应该是HH,12小时制是hh。用户可能对格式符号不太熟悉,可能需要给出常见符号的例子。 然后,用户可能需要不同的示例,比如不同的日期格式,比如年-月-日、带时间的,或者自定义格式。引用中的示例代码显示,使用require的方式引入,但如果用户用的是ES6模块,可能需要用import语句。所以应该分别给出CommonJS和ES6的导入方式。 另外,引用[2]和[3]中的例子显示,月份是从0开始的,所以在构造Date对象时要注意,比如new Date(2017, 6, 6)其实是7月6日。这点可能需要提醒用户,但如果是用当前日期的话,可能不需要特别处理。 用户可能需要知道如何安装date-fns,所以步骤里应该包括安装命令,比如npm install date-fns。然后分步骤讲解如何引入和使用。同时,要确保代码示例正确,比如格式字符串是否正确,是否区分大小写。 还要考虑用户可能的疑问,比如时区问题。date-fns默认使用本地时间还是UTC?可能需要说明一下,或者提供使用UTC函数的例子。不过用户的问题主要是格式化,可能暂时不需要涉及时区转换。 另外,引用[4]提到date-fns是精准易用的,可以强调其模块化的优点,比如只引入需要的函数,减少代码体积。这对用户来说可能是一个优势。 最后,生成相关问题的时候,可以考虑用户接下来可能会遇到的问题,比如如何处理时区,如何解析日期,或者如何进行日期的加减操作。这些问题可以引导用户进一步探索库的功能。</think>### 使用 date-fns 格式化日期的步骤与示例 #### 1. 安装 date-fns ```bash npm install date-fns # 或 yarn add date-fns ``` #### 2. 基础格式化示例 date-fns 的 `format()` 函数通过格式字符串控制输出样式。 **语法**: ```javascript import { format } from &#39;date-fns&#39;; format(dateObject, &#39;格式字符串&#39;); ``` **示例代码**: ```javascript // 引入模块(ES6 语法) import { format } from &#39;date-fns&#39;; // 示例1:年-月-日 const date1 = new Date(); console.log(format(date1, &#39;yyyy-MM-dd&#39;)); // 输出类似 "2023-10-05" // 示例2:带时间的24小时制 console.log(format(date1, &#39;yyyy-MM-dd HH:mm:ss&#39;)); // 输出类似 "2023-10-05 14:30:15" // 示例3:自定义格式(星期+月份) console.log(format(date1, &#39;EEEE, MMMM do yyyy&#39;)); // 输出类似 "Thursday, October 5th 2023" ``` #### 3. 关键格式符号说明 | 符号 | 含义 | 示例 | |------|----------------|------------| | yyyy | 完整年份 | 2023 | | MM | 两位月份 | 01, 12 | | dd | 两位日期 | 05, 31 | | HH | 24小时制小时 | 00, 23 | | mm | 分钟 | 05, 59 | | ss | 秒 | 05, 59 | | EEEE | 完整星期名称 | Monday | #### 4. 通过引用优化代码 若需减小打包体积,可仅导入 `format` 函数[^4]: ```javascript // 按需引入(CommonJS) const format = require(&#39;date-fns/format&#39;); console.log(format(new Date(), &#39;dd/MM/yyyy&#39;)); // 输出 "05/10/2023" ```
评论 34
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值