环境—Ubuntu24(py3.12)安装streamlit(虚拟环境py3.9)

  • 请尽可能不用Ubuntu24
  • 请直接跳7.查看解决方案

Action Log

  1. 在Ubuntu 24.04中更换为清华源的步骤
  2. 【Bug】Python 3.12 on Ubuntu 24.04 is Externally Managed - PIP is broken
    相关解决方案
从 Ubuntu 24.04 开始,有两个选项:
1. install python pacakges/modules system wide via "sudo apt install python3-<Packagename>" ... which is not the case for pytube because: not avaiable as ubuntu package
通过“sudo apt install python3-”在系统范围内安装 python 包/模块 “... pytube 的情况并非如此,因为:无法作为 ubuntu 包使用
2. create a python venv (virtual env), and from there install via pip.
创建一个 python venv(虚拟环境),然后从那里通过 pip 安装。
  1. 修复pip
  • 安装系统的py3.12的pip
sudo add-apt-repository universe
sudo apt update && sudo apt upgrade
sudo apt install python3-pip
  • 在 Ubuntu 24 中,软件包需要彼此隔离。因此 pipx 将每个软件包安装在其自己的隔离环境中。
    而在 Ubuntu 22 中,您可以直接使用 pip install 因为没有这个要求。
sudo apt install pipx
pipx install numpy    
pipx install ....
  • 安装虚拟环境
    apt install pipenv
  • 配置pipenv
    vim ~/.profile
  • 打开profile文件后(i),添加下面命令进行路径配置接即可成功完成pipenvshell的安装预配置:
export PATH=$PATH:/home/<自己的用户名>/.local/bin

【esc】–【:】–【wq】–【enter】

  • 更新
    source ~/.profile
  1. [项目dir]进入项目文件夹,创建该项目的虚拟环境
cd /project*
pipenv shell
pipenv shell	进入虚拟环境
exit	退出虚拟环境
pipenv --rm	删除整个环境,不会删除pipfile

然后得到输出含:

...
Successfully created virtual environment!
...
(project*)root@设备名称:/文件夹绝对路径#
  1. [项目dir]查看现有的安装包
pip list
  1. [项目dir]安装项目所需的环境库包
pip install -r requirements.txt -v/
  1. [系统dir]发现我的库包需要python3.9(系统python3.12)

如何在Ubuntu24.04系统上安装Python 3.10:PPA和源码编译两种方法

查看Python版本:ls /usr/bin/python*

  1. 安装python3.9及其dev :

重点是:python3.9-venv python3.9-dev

sudo apt install python3.9 python3.9-venv python3.9-dev

Ubuntu修改系统级Python版本:

  • 基于update-alternatives:sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 2
  • 基于软链接:sudo ln -s /usr/bin/python3.9 /usr/bin/python
  1. 实现项目的环境(python3.9及其pip)

实现路径:系统安装python3.9及其pip——虚拟环境建立导入——install应用包

a. [系统dir]将pip版本更改为符合当前的Python版本

apt安装【失败】
sudo apt remove python3-pip
sudo apt install python3-pip
get-pip安装【成功】
sudo curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python3.9 get-pip.py

b. [项目dir]项目虚拟环境里配置python3.9

 [项目dir]项目虚拟pipenv环境里配置python3.9
sudo pipenv --python 3.9
pipenv shell
pipenv install streamlit numpy 
...
[项目dir]项目python -m venv myenv里配置python3.9【成功】
sudo python3.9 -m venv myenv
source myenv/bin/activate
sudo chown -R $USER:$USER /..项目文件夹绝对路径../apps
pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install numpy streamlit numpy-financial pandas json5 datetime plotly -i https://pypi.tuna.tsinghua.edu.cn/simple
...

最终项目文件夹目录
—projects
——files
——myenv
——get-pip.py

  1. [项目dir]项目虚拟环境包-m venv myenv里配置python3.9

实现路径:系统安装python3.9——虚拟环境建立导入并对应安装pip——install应用包

sudo python3.9 -m venv myenv --without-pip
sudo source myenv/bin/activate
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python3.9 get-pip.py
pip install numpy streamlit numpy-financial pandas json5 datetime plotly -i https://pypi.tuna.tsinghua.edu.cn/simple
...
  1. 【选】删除/重装(前)虚拟环境
sudo rm -rf myenv

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

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

相关文章

【C++进阶】关联容器:set类型

目录 一、set 基本概念 1.1 定义与特点 1.2 头文件与声明 1.3 核心特性解析 二、set 底层实现 2.1 红黑树简介 2.2 红黑树在 set 中的应用 三、set 常用操作 3.1 插入元素 3.2 删除元素 3.3 查找元素 3.4 遍历元素 3.5 性能特征 四、set 高级应用 4.1 自定义比较…

[漏洞篇]SSRF漏洞详解

[漏洞篇]SSRF漏洞详解 免责声明&#xff1a; 本文主要讲解漏洞原理&#xff0c;以及防御手段&#xff0c;旨在帮助大家更好的了解漏洞危害&#xff0c;以及开发中所需要的点&#xff0c;切勿拿来做违法事情&#xff0c;否则后果自负。 一、介绍 概念 SSRF&#xff1a;服务端请…

nuscenes数据集分析

nuscenes数据集分析 标注与总体介绍 nuscenes包含有相机、激光雷达、毫米波雷达、IMU与GPS等设备提供的数据。它的数据采集了1000个场景&#xff0c;每个场景大约有20s&#xff0c;针对目标检测任务&#xff0c;对23类物体进行标注&#xff0c;且以2Hz的频率提供精确的三维目标…

JavaScript学习教程,从入门到精通,JavaScript 运算符及语法知识点详解(8)

JavaScript 运算符及语法知识点详解 一、JavaScript 运算符 1. 算术运算符 用于执行数学运算&#xff1a; 加法- 减法* 乘法/ 除法% 取模&#xff08;余数&#xff09; 递增-- 递减** 幂运算&#xff08;ES6&#xff09; let a 10, b 3; console.log(a b); // 13 conso…

Shell脚本的学习

编写脚本文件 定义以开头&#xff1a;#!/bin/bash #!用来声明脚本由什么shell解释&#xff0c;否则使用默认shel 第一步&#xff1a;编写脚本文件 #!/bin/bash #注释 echo "这是输出" 第二步&#xff1a;加上执行权限&#xff1a;chmod x 脚本文件名.sh 第三步&…

在线PDF文件拆分工具,小白工具功能实用操作简单,无需安装的文档处理工具

小白工具中的在线 PDF 文件拆分工具是一款功能实用、操作便捷的文档处理工具&#xff0c;以下是其具体介绍&#xff1a; 操作流程 上传 PDF 文档&#xff1a;打开小白工具在线PDF文件拆分工具 - 快速、免费拆分PDF文档 - 小白工具的在线 PDF 文件拆分页面&#xff0c;通过点击 …

数字的乘阶运算

求数字的乘阶&#xff1a; 例如&#xff1a;6的乘阶运算&#xff1a;6*5*4*3*2*1 例如&#xff1a;3的乘阶运算&#xff1a;3*2*1 class Program{static void Main(string[] args){Console.WriteLine("请输入数字&#xff1a;");int num_01 Convert.ToInt32 (Con…

tcp/ip攻击及防范

作为高防工程师&#xff0c;我每天拦截数以万计的恶意流量&#xff0c;其中TCP/IP协议层攻击是最隐蔽、最具破坏性的威胁之一。常见的攻击手法包括&#xff1a; 1. SYN Flood攻击&#xff1a;攻击者发送大量伪造的SYN包&#xff0c;耗尽服务器连接资源&#xff0c;导致正常用…

C++类成员内存分布详解

本文将探讨C类中成员变量的内存分布情况&#xff0c;包括普通成员、静态成员、虚函数等不同情况下的内存布局。 一、基本成员内存布局 1. 普通成员变量 普通成员变量按照声明顺序在内存中连续排列&#xff08;受访问修饰符和内存对齐影响&#xff09;&#xff1a; class Nor…

计算机视觉——为什么 mAP 是目标检测的黄金标准

概述 在目标检测领域&#xff0c;有一个指标被广泛认为是衡量模型性能的“黄金标准”&#xff0c;它就是 mAP&#xff08;Mean Average Precision&#xff0c;平均精确率均值&#xff09;。如果你曾经接触过目标检测模型&#xff08;如 YOLO、Faster R-CNN 或 SSD&#xff09;…

C语言单链表的增删改补

目录 &#xff08;一&#xff09;单链表的结构定义及初始化 (二)单链表的尾插&#xff0c;头插 (三)单链表的尾删&#xff0c;头删 (四)单链表的查找&#xff0c;删除&#xff0c;销毁 单链表是数据结构课程里的第二个数据结构。单链表在逻辑结构是连续的&#xff0c;在物理…

Android10.0 framework第三方无源码APP读写断电后数据丢失问题解决

1.前言 在10.0中rom定制化开发中,在某些产品开发中,在某些情况下在App用FileOutputStream读写完毕后,突然断电 会出现写完的数据丢失的问题,接下来就需要分析下关于使用FileOutputStream读写数据的相关流程,来实现相关 功能 2.framework第三方无源码APP读写断电后数据丢…

杀戮尖塔(Slay The Spire) 的全新角色模组 - 女巫

女巫&#xff08;The Witch&#xff09; 杀戮尖塔&#xff08;Slay The Spire&#xff09; 的全新角色模组 女巫模组为游戏增添了超过 75 张新卡牌和 4 个全新遗物&#xff0c;围绕 诅咒&#xff08;Curses&#xff09; 展开独特的玩法体验。她的起始遗物 黑猫&#xff08;Bl…

AI开发学习路线(闯关升级版)

以下是一份轻松版AI开发学习路线&#xff0c;用「闯关升级」的方式帮你从零开始变身AI开发者&#xff0c;每个阶段都配有有趣的任务和实用资源&#xff0c;保证不枯燥、可落地&#xff01;&#x1f447; 目录 &#x1f530; 新手村&#xff1a;打基础&#xff08;1-2个月&…

迭代器模式深度解析与实战案例

一、模式定义 迭代器模式&#xff08;Iterator Pattern&#xff09; 是一种行为设计模式&#xff0c;提供一种方法顺序访问聚合对象的元素&#xff0c;无需暴露其底层表示。核心思想是将遍历逻辑从聚合对象中分离&#xff0c;实现 遍历与存储的解耦。 二、核心组件 组件作用…

SSH远程工具

一、常见SSH远程工具 工具开源跨平台多标签文件传输高级功能价格Xshell❌Win✔️✔️脚本、会话管理免费/商业版Tabby✔️全平台✔️✔️插件扩展免费MobaXterm❌Win✔️✔️集成工具集免费/付费SecureCRT❌Win/macOS/Linux✔️✔️企业级加密$129+PuTTY✔️全平台❌❌基础连接…

VUE中的路由处理

1.引入,预处理main.ts import {} from vue-router import { createRouter, createWebHistory } from vue-router import HomePages from @/pages/HomePages.vue import AboutPage from @/pages/AboutPage.vue import NewsPage from @/pages/NewsPage.vue //1. 配置路由规…

编程助手fitten code使用说明(超详细)(vscode)

这两年 AI 发展迅猛&#xff0c;作为开发人员&#xff0c;我们总是追求更快、更高效的工作方式&#xff0c;AI 的出现可以说改变了很多人的编程方式。 AI 对我们来说就是一个可靠的编程助手&#xff0c;给我们提供了实时的建议和解决方&#xff0c;无论是快速修复错误、提升代…

Opencv计算机视觉编程攻略-第九节 描述和匹配兴趣点

一般而言&#xff0c;如果一个物体在一幅图像中被检测到关键点&#xff0c;那么同一个物体在其他图像中也会检测到同一个关键点。图像匹配是关键点的常用功能之一&#xff0c;它的作用包括关联同一场景的两幅图像、检测图像中事物的发生地点等等。 1.局部模板匹配 凭单个像素就…

C++内存管理优化实战:提升应用性能与效率

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家、CSDN平台优质创作者&#xff0c;高级开发工程师&#xff0c;数学专业&#xff0c;拥有高级工程师证书&#xff1b;擅长C/C、C#等开发语言&#xff0c;熟悉Java常用开发技术&#xff0c;能熟练应用常用数据库SQL server,Oracle…