ubuntu升级python版本

Ubuntu升级Python版本

  1. 解压缩文件: 下载完成后,解压缩文件:

    tar -xf Python-3.12.0.tgz
    
  2. 编译并安装: 进入解压后的目录,然后配置和安装Python:

    codecd Python-3.12.0
    ./configure --enable-optimizations
    make -j $(nproc)
    sudo make altinstall
    
  3. 查找安装所在地

    zhongs@ubuntu:~/HOME/package/Python-3.12.2$ find /usr/local -name "python3.12*"
    /usr/local/share/man/man1/python3.12.1
    /usr/local/lib/python3.12
    /usr/local/bin/python3.12
    /usr/local/bin/python3.12-config
    /usr/local/include/python3.12
    
  4. 直接运行Python 3.12: 你可以尝试直接运行/usr/local/bin/python3.12来启动Python 3.12:

    /usr/local/bin/python3.12 --version
    
  5. 创建符号链接(可选): 如果你希望通过简单的命令python3.12来运行它,你可以创建一个符号链接:

    sudo ln -s /usr/local/bin/python3.12 /usr/bin/python3.12
    
  6. 创建这个符号链接后,你应该可以使用以下命令来检查版本:

    zhongs@ubuntu:~/HOME/package/Python-3.9.12$ python3.12 --version
    Python 3.12.2
    zhongs@ubuntu:~/HOME/package/Python-3.9.12$ python3.12
    Python 3.12.2 (main, Nov 15 2024, 16:26:20) [GCC 7.5.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
    

venv模块创建和激活虚拟环境

在进行Python项目开发时,使用虚拟环境可以有效隔离项目依赖,避免全局包冲突。下面是使用Python 3.12的venv模块创建和激活虚拟环境的详细步骤。

步骤 1:创建虚拟环境

首先,确保你已经安装了Python 3.12,并且可执行文件位于/usr/local/bin/python3.12

创建虚拟环境

打开终端,并运行以下命令以创建名为 ai 的虚拟环境:

/usr/local/bin/python3.12 -m venv ai

此命令将在当前目录下创建一个名为 ai 的文件夹,其中包含独立的Python环境和包管理工具。

步骤 2:激活虚拟环境

创建虚拟环境后,你需要激活它才能使用。这使得安装的包只会影响到该虚拟环境,而不是全局Python环境。

激活虚拟环境

在终端中,运行以下命令激活虚拟环境:

source ai/bin/activate

激活后,终端提示符会发生变化,通常会在行首显示虚拟环境的名称 (ai),提示你当前正处于该虚拟环境中。

步骤 3在虚拟环境中工作

激活虚拟环境后,你可以像平常一样使用 pip 安装Python包,这些包将只存在于该虚拟环境中。

示例:安装请求库

pip install requests

步骤 4:退出虚拟环境

完成工作后,可以通过以下命令退出虚拟环境,返回全局Python环境:

deactivate

注意事项

  • 每次打开新的终端会话时,如果需要使用虚拟环境,记得重新激活。
  • 虚拟环境可以通过删除其文件夹来删除,例如:rm -rf ai

virtualenvwrapper安装虚拟环境

virtualenvwrapper进行虚拟环境管理的详细中文Markdown使用流程,包括创建和管理虚拟环境的过程。

使用 `virtualenvwrapper` 创建和管理虚拟环境`virtualenvwrapper` 是一个用于简化和增强 `virtualenv` 使用体验的工具。它提供了一系列命令来更好地管理多个虚拟环境。## 前提条件确保你已经安装了Python和`virtualenvwrapper`。如果还没有安装,可以使用以下命令进行安装:​```bash
pip install virtualenvwrapper

配置 virtualenvwrapper

在开始使用之前,需要进行一些配置。

配置步骤

  1. 打开终端并编辑 ~/.bashrc 文件(或 ~/.zshrc,取决于你使用的Shell):

    nano ~/.bashrc
    
  2. 添加以下行到文件末尾:

    codeexport WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenvwrapper.sh
    
    • WORKON_HOME 定义了虚拟环境存储的位置。
    • VIRTUALENVWRAPPER_PYTHON 指定了Python解释器的路径。
    • source 命令加载 virtualenvwrapper 脚本。
  3. 保存并退出编辑器,然后在终端中刷新配置:

    source ~/.bashrc
    

使用 virtualenvwrapper 创建虚拟环境

创建虚拟环境

使用以下命令创建名为 ai 的虚拟环境:

mkvirtualenv ai

创建完成后,虚拟环境会自动激活。

指定Python版本(可选)

如果需要使用特定的Python版本,例如Python 3.12,可以使用以下命令:

mkvirtualenv -p /usr/local/bin/python3.12 ai

管理虚拟环境

激活拟环境

使用 workon 命令激活已创建的虚拟环境:

workon ai

列出所有虚拟环境

使用 lsvirtualenv 列出所有可用的虚拟环境:

lsvirtualenv

删除虚拟环境

使用 rmvirtualenv 删除指定的虚拟环境:

rmvirtualenv ai

退出虚拟环境

使用 deactivate 命令退出当前激活的虚拟环境:

deactivate
  • 每次打开新的终端会话时,使用 workon 激活需要的虚拟环境。
  • virtualenvwrapper 提供了更多有用的命令,可以通过查看文档获取更多信息。

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

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

相关文章

从Windows到Linux:跨平台数据库备份与还原

数据库的备份与还原 目录 引言备份 2.1 备份所有数据库2.2 备份单个数据库2.3 备份多个指定数据库 传输备份文件还原 4.1 还原所有数据库4.2 还原单个数据库4.3 还原多个指定数据库 注意事项拓展 1. 引言 在不同的操作系统间进行数据库迁移时,命令行工具是我们的…

准备写一个内网穿透的工具

准备写一个内网穿透的工具,目前只实现了HTTP内网穿透的GET方式,看能不能坚持写下去 git地址: xuejiazhi/PortRelay

google guava 库 最佳实践 学习指南 学习实用示例

学习Guava库 核心提纲: 入门示例 guava 最佳实践 学习指南 1. 概览与入门 Guava库的介绍Guava的安装与依赖配置Guava的主要模块和功能概览 入门示例 2. 基本工具类 Preconditions:用于断言和参数检查Verify:用于验证对象状态 https://blog.csdn.net/…

捣鼓小玩意-分批处理工具类

分批处理工具类 博主自己的博客点击访问(内容大部分更新在自己的博客,有时间才会整理到CSDN) 有时候会遇到一些大批量数据成千上万的列表,如果单独一个循环处理,可能会很慢,或者是遇到如需要根据id in ()…

提示词战术技巧-前导课

在人工智能的快速发展中,大模型(如OpenAI的GPT-4和GPT-4)为各行各业带来了革命性的变化。正确地选择适合的业务需求的大模型,并掌握提示词工程的编写与调优是成功实现AI应用的关键。本文旨在提供一个全面的教学指南,帮助学习者理解和掌握大模型的业务选型与提示词工程的技…

零配置打包工具 Parcel 的详细使用指南

前言 在前端开发中,选择一个高效且易用的打包工具至关重要。Parcel 作为一款零配置的 Web 应用打包工具,凭借其卓越的性能和简单的使用体验,赢得了众多开发者的青睐。它不仅能够自动处理依赖关系和代码打包,还支持热模块替换和多…

【AI知识】逻辑回归介绍+ 做二分类任务的实例(代码可视化)

1. 分类的基本概念 在机器学习的有监督学习中,分类一种常见任务,它的目标是将输入数据分类到预定的类别中。具体来说: 分类任务的常见应用: 垃圾邮件分类:判断一封电子邮件是否是垃圾邮件 。 医学诊断:…

删除 C 盘空文件夹--递归删除

# Language: Powershell # Style: TypeScript# 文件名: # "文件(夹):删除空文件夹.ps1"function Remove-EmptyDirectories {param ([string]$Path)# 获取所有目录,把子目录排列在父目录前面。# 删除所有子文件(夹)后,可判断父目录为…

为SSH2协议服务器的用户设置密钥

目录 私钥的创建1. 在服务器上直接生成2. 如果需要配置免密登录3. 查看生成的密钥 导出私钥至SSH用户获取sudo权限 新的一台服务器类型是SSH2:这表示服务器支持SSH(Secure Shell)协议的第二个版本。SSH是一个网络协议,用于加密方式…

level2逐笔委托查询接口

沪深逐笔委托队列查询 前置步骤 分配数据库服务器 查询模板 以下是沪深委托队列查询的请求模板&#xff1a; http://<数据库服务器>/sql?modeorder_book&code<股票代码>&offset<offset>&token<token>查询参数说明 参数名类型说明mo…

微软开源GraphRAG的使用教程(最全,非常详细)

GraphRAG的介绍 目前微软已经开源了GraphRAG的完整项目代码。对于某一些LLM的下游任务则可以使用GraphRAG去增强自己业务的RAG的表现。项目给出了两种使用方式&#xff1a; 在打包好的项目状态下运行&#xff0c;可进行尝试使用。在源码基础上运行&#xff0c;适合为了下游任…

文献研读|基于像素语义层面图像重建的AI生成图像检测

前言&#xff1a;本篇文章主要对基于重建的AI生成图像检测的四篇相关工作进行介绍&#xff0c;分别为基于像素层面重建的检测方法 DIRE 和 Aeroblade&#xff0c;以及基于语义层面重建的检测方法 SimGIR 和 Zerofake&#xff1b;并对相应方法进行比较。 相关文章&#xff1a;论…

VScode MAC按任意键关闭终端 想要访问桌面文件

说明 最近配置MAC上CPP的运行环境&#xff0c;在安装必要的CPP插件后&#xff0c;配置launch和task等json文件后&#xff0c;点击运行三角形&#xff0c;每次都会跳出main想要访问桌面上的文件。并且输出也是在调试控制台&#xff0c;非常逆天。 尝试 尝试1:尽管我尝试将ta…

7.日常算法

1. NC140 排序 题目来源 要求使用堆进行排序 class Solution { public: void adjustDown(vector<int>& arr, int root, int n){int parent root;int chiled root * 2 1;while (chiled < n){if (chiled 1 < n && arr[chiled 1] > arr[chi…

Linux Shell 脚本编程基础知识篇

ℹ️大家好&#xff0c;我是练小杰&#xff0c;从本文是Linux shell脚本编程的基础知识内容&#xff0c;后续我会不断补充~~ 更多Linux 相关内容请点击&#x1f449;“Linux专栏”~ 假面驾驭&#xff0c;时王&#xff0c;假面骑士时王~~ 文章目录 什么是 Linux Shell主要功能…

QT绘制同心扇形

void ChartForm::paintEvent(QPaintEvent *) {QPainter painter(this);painter.setRenderHint(QPainter::Antialiasing);// 设置抗锯齿painter.save();// 设置无边框&#xff08;不需要设置QPen&#xff0c;因为默认是不绘制边框的&#xff09;QPen pen(Qt::NoPen);// QPen pen…

【0369】Postgres内核 checkpoint record 与 expectedTLEs 校验 ( 12 )

上一篇: 文章目录 1. checkpoint record 校验1.1 预期 timeline1.2 timeline 判断1.3 checkPoint ThisTimeLineID2. 最小 recovery point3. 初始化 LastRec1. checkpoint record 校验 如果 checkpoint record 的位置不在请求 timeline 历史中的预期 timeline 上,则无法继续…

TL3568/TL3562更改主机名,在Kernel用menuconfig失效

前言 最近在玩RK3562开发板&#xff0c;想改串口调试时看到的主机名&#xff0c;开发板的主机名默认是RK3562-Tronlong&#xff0c;如图&#xff1a; 按照之前玩T113开发版&#xff0c;在Kernel通过make menuconfig&#xff0c;可以改。但是在这个RK3562&#xff0c;改了后&…

【PLL】ISSCC 2024 Tutorial: Calibration Techniques in PLLs

1. 数字辅助模拟电路 为什么要辅助&#xff0c;或替换模拟电路&#xff1f; 利用CMOS管子尺寸缩小&#xff0c;降低功耗 和 减小面积校正模拟电路的 非线性行为 和 失配 数字辅助的好处&#xff1a; 简化模拟电路设计提高能源效率&#xff0c;提高准确度 2. 锁相环基础 2.1 概…

STM32-笔记5-按键点灯(中断方法)

1、复制03-流水灯项目&#xff0c;重命名06-按键点灯&#xff08;中断法&#xff09; 在\Drivers\BSP目录下创建一个文件夹exti&#xff0c;在该文件夹下&#xff0c;创建两个文件exti.c和exti.h文件&#xff0c;并且把这两个文件加载到项目中&#xff0c;打开项目工程文件 加载…