当前位置: 首页 > news >正文

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 提供了更多有用的命令,可以通过查看文档获取更多信息。

相关文章:

ubuntu升级python版本

Ubuntu升级Python版本 解压缩文件: 下载完成后,解压缩文件: tar -xf Python-3.12.0.tgz编译并安装: 进入解压后的目录,然后配置和安装Python: codecd Python-3.12.0 ./configure --enable-optimizations ma…...

《Time Ghost》的制作:使用 DOTS ECS 制作更为复杂的大型环境

*基于 Unity 6 引擎制作的 demo 《Time Ghost》 开始《Time Ghost》项目时的目标之一是提升在 Unity 中构建大型户外环境的构建标准。为了实现这一目标,我们要有处理更为复杂的场景的能力、有足够的工具支持,同时它对引擎的核心图形、光照、后处理、渲染…...

详细描述一下 Elasticsearch 更新和删除文档的过程。

1、删 除 和 更 新 也 都 是 写 操 作 , 但 是 Elasticsearch 中的 文 档 是 不 可 变 的 , 因 此 不 能被 删 除 或 者 改 动 以 展 示 其 变 更 ; 2、磁盘 上 的 每 个 段 都 有 一 个 相 应 的 .del 文件 。当删 除 请 求 发 送 后 &#…...

OpenCV与Qt5开发卡尺找圆工具

文章目录 前言一、卡尺原理二、1D边缘提取三、圆拟合四、软件实现结束语 基于OpenCV与Qt5构建卡尺找圆工具 前言 博主近期基于海康Vision Master4.0做了一个工业视觉工程项目,其中就使用到了海康VM的找圆工具,然后博主根据其中的技术原理,也…...

【网络安全】Web Timing 和竞争条件攻击:揭开隐藏的攻击面

Web Timing 和竞争条件攻击:揭开隐藏的攻击面 在传统的 Web 应用中,漏洞的发现和利用通常相对容易理解。如果代码存在问题,我们可以通过发送特定输入来强制 Web 应用执行非预期的操作。这种情况下,输入和输出之间往往有直接关系&…...

分立器件---运算放大器关键参数

运算放大器 关键参数 1、供电电压:有单电源电压、双电源电压,双电源电压尽量两个电源都接。如图LM358B,供电电压可以是20V或者是40V和GND。 2、输入偏置电流IB:当运放输出直流电压为零时,运放两个输入端流进或者流出直流电流的平均值。同向输入端电流IB+与反向输入端电流…...

Stable Diffusion Controlnet常用控制类型解析与实战课程 4

本节内容,是stable diffusion Controlnet常用控制类型解析与实战的第四节课程。上节课程,我们陆续讲解了几个与图像风格约束相关的控制类型,本节课程我们再学习一些实用价值较高的控制类型,看一看他们提供了哪些控制思路。 一&…...

Linux 本地编译安装 gcc9

这里演示非sudo权限的本地linux 用户安装 gcc9 下载源代码: 可以从GCC官方网站或其镜像站点下载GCC 9的源代码压缩包。使用wget或curl命令,这通常不需要额外权限 wget https://ftp.gnu.org/gnu/gcc/gcc-9.5.0/gcc-9.5.0.tar.gz tar -xf gcc-9.5.0.tar…...

SpringBoot 自定义事件

在Spring Boot中,自定义事件和监听器是一种强大的机制,允许你在应用程序的不同部分之间进行解耦通信。你可以定义自定义事件,并在需要的时候发布这些事件,同时让其他组件通过监听器来响应这些事件。 以下是如何在Spring Boot中创…...

unity shader中的逐像素光源和逐顶点光源

在Unity Shader中,逐像素光源和逐顶点光源是两种不同的光照计算方法,它们之间存在显著的区别。 一、基本原理 逐顶点光源:这种方法在顶点着色器中计算每个顶点的光照值。然后,在片段着色器中,通过插值算法将这些顶点…...

MongoDB-副本集

一、什么是 MongoDB 副本集? 1.副本集的定义 MongoDB 的副本集(Replica Set)是一组 MongoDB 服务器实例,它们存储同一数据集的副本,确保数据的高可用性和可靠性。副本集中的每个节点都有相同的数据副本,但…...

【图像处理lec7】图像恢复、去噪

目录 一、图像退化与恢复概述 二、图像退化中的噪声模型 1、使用 imnoise 函数添加噪声 (1)imnoise 函数的概述 (2)函数语法 (3)支持的噪声类型与具体语法 (4)噪声类型的详细…...

C# 连接ClickHouse 数据库

在 C# 中连接 ClickHouse 数据库,您可以使用 ClickHouse.Client 库。这个库提供了对 ClickHouse 数据库的高效访问。以下是详细的步骤指南,帮助您在 C# 项目中连接和操作 ClickHouse 数据库。 1. 安装 ClickHouse.Client 包 首先,您需要在您…...

在安卓Android应用中实现二维码图像的保存与条形码文本合并

在开发Android应用时,我们经常需要处理图像和文本数据,特别是当涉及到二维码生成和条形码信息展示时。本文将介绍如何在Android应用中实现一个功能,即将二维码图像保存到设备存储,并在图像下方添加条形码文本信息。为了实现这一功…...

Vue3 重置ref或者reactive属性值

需要重新定义一个对象绑定复制给原对象 。 实例代码: const data () > ({groupId: ,groupCode: ,groupName: ,groupType: ,});const formData ref(data());//重置对象值 const reset()>{Object.assign(formData, data()…...

深入理解STL list erase

1、list erase后&#xff0c;当前的迭代器失效&#xff0c;返回指向下一个节点的迭代器 #include<list> #include<iostream> #include<vector> using namespace std;int main() {list<int> ls;ls.push_back(1);ls.push_back(2);ls.push_back(3);list&…...

使用 Python 从 ROS Bag 中提取图像:详解与实现

在机器人应用中&#xff0c;ROS (Robot Operating System) 是一个常见的框架。ROS Bag&#xff08;rosbag&#xff09;是 ROS 中用于记录和回放数据流&#xff08;例如传感器数据、话题消息等&#xff09;的一种强大工具。有时&#xff0c;我们需要将存储在 rosbag 文件中的图像…...

MYSQL执行一条update语句,期间发生了什么

客户端先通过连接器建立连接&#xff0c;连接器自会判断用户身份&#xff1b; 因为这是一条 update 语句&#xff0c;所以不需要经过查询缓存&#xff0c;但是表上有更新语句&#xff0c;是会把整个表的查询缓存清空的&#xff0c;所以说查询缓存很鸡肋&#xff0c;在 MySQL 8…...

前端性能优化思路

前端性能优化需要从多方面入手,包括减少资源加载时间、优化页面渲染、利用浏览器缓存、使用CDN加速,服务端渲染和预渲染、性能监控和分析。需要综合运用这些优化策略才能显著提升网页或应用的性能和用户体验 一、减少资源加载时间 1. 代码分割 原理: 代码分割允许我们将代…...

有向图判环(leetcode207,leetcode210)

有向图判环&#xff08;leetcode207&#xff0c;leetcode210&#xff09; 有向图判环 #include <iostream> #include <vector> using namespace std;struct graph {int V; // 顶点的数量vector<vector<int>> adj; // 邻接表数组…...

Python爬虫实战:研究feedparser库相关技术

1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

大数据零基础学习day1之环境准备和大数据初步理解

学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 &#xff08;1&#xff09;设置网关 打开VMware虚拟机&#xff0c;点击编辑…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1

每日一言 生活的美好&#xff0c;总是藏在那些你咬牙坚持的日子里。 硬件&#xff1a;OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写&#xff0c;"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

C# 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...

LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)

在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...