关于虚拟环境中遇到的bug
conda和cmd介绍
介绍
Conda
-
概述:
- Conda是一个开源包管理系统和环境管理系统,尤其适用于Python和R语言的开发环境。
- 它允许用户创建独立的虚拟环境,方便地管理依赖包和软件版本。
-
特点:
- 环境管理:可以创建、导入、导出和删除独立的环境。这对不同项目使用不同依赖版本时非常有用。
- 包管理:支持安装、更新和卸载包,能够解决包之间的依赖关系。
- 跨平台:支持在Windows、Unix和MacOS上运行。
-
优点:
- 避免软件包版本冲突。
- 简化科学计算和数据分析中的软件管理。
- 有大量的预编译包,方便安装(如NumPy、Pandas、SciPy等)。
CMD
-
概述:
- CMD(命令提示符)是Windows操作系统的一个命令行解释器,用于执行操作系统命令和脚本。
- 主要用于进行文件管理、程序执行、系统设置等低级操作。
-
特点:
- 命令行界面:用户通过输入文本命令来与操作系统进行交互。
- 操作范围:可以调用系统命令、批处理文件、运行可执行程序等。
-
优点:
- 强大的文件管理功能。
- 可以执行各类批处理脚本,进行自动化任务。
- 适合具备命令行操作经验的用户。
区别
-
用途:
- Conda专注于包和环境管理,特别是在数据科学和机器学习领域。
- CMD用于操作系统级别的任务,如文件管理和系统配置。
-
运行环境:
- Conda在其环境中运行,使用特定的Python和依赖。
- CMD是全系统的命令行界面,不限于特定的编程语言。
界面
conda
cmd
虚拟环境
Bash和创建的虚拟环境
Bash
-
概述:
- Bash(Bourne Again SHell)是一个Unix Shell,广泛用于Linux和MacOS等操作系统中。
- 它是一种命令行解释器,允许用户通过文本命令与操作系统进行交互。
-
功能:
- 命令行操作:执行文件和程序、管理文件系统、运行脚本等。
- 编程功能:支持条件语句、循环、函数等,可以编写复杂的脚本来自动化任务。
- 环境管理:可以设置和使用环境变量,影响运行在该Shell中的程序的行为。
-
特点:
- 跨平台(在多种Unix/Linux环境中运行)。
- 基本上用于与操作系统的交互,而不是专注于特定的编程语言环境。
创建的虚拟环境
-
概述:
- 虚拟环境是用于创建隔离的、独立的Python运行环境的工具,可以用
venv
、virtualenv
、conda
等命令创建。 - 每个虚拟环境都有自己的Python解释器和依赖包,互不干扰。
- 虚拟环境是用于创建隔离的、独立的Python运行环境的工具,可以用
-
功能:
- 隔离依赖:可以为每个项目安装特定版本的包,避免包之间的冲突。
- 简化部署:便于在不同项目中维护不同的依赖和库,而不影响全局Python环境。
-
特点:
- 创建的虚拟环境是特定于Python的,与特定的Python版本和依赖包绑定。
- 适用于Python开发者,特别是在进行数据科学、机器学习等项目时
注意
cmd和conda
cmd和conda可以比喻成window下的两个兄弟,cmd是大哥,conda是二哥,cmd中的python和conda中的python是两个东西
bash和conda中创建的虚拟环境
bash和conda中创建的虚拟环境可以比喻成父子,bash的python是老爸,conda虚拟环境中的python是儿子,其实在bash中,我们默认下载的python,他就会放在一个全局的环境当中,我们pip下载的库,也会放在一个全局的环境当中,当全局环境中包下载过多,就会造成一些版本的冲突。我们可以把bash和conda比喻成两个文件夹,bash的python用的是bash中的库,conda的python用的是conda的库,两者互不干扰。
jupyternotebook
我们会使用pip jupyter notebook下载,但是如果你在cmd中(不是虚拟环境)下载,他就会创建一个jupyter,相当于一个全局jupyter,如果你在conda(不是虚拟环境)中下载,他就会在conda中创建一个jupyter,相当于在conda中的一个全局jupyter。所以我们可以创建一个虚拟环境,虚拟环境中启动jupyter notebook,会使用虚拟环境中的内核
内核
在Jupyter Notebook中,**内核(Kernel)**是一个重要的概念,它负责执行代码和处理用户输入。具体来说,内核是一个与用户的代码执行环境,它连接到Jupyter Notebook,以便处理用户的代码请求并返回结果。
虚拟环境的使用
cmd中
创建虚拟环境
pip virtualenv 这个要自己下载
virtualenv -p python解释器路径 名字(虚拟环境的名字)# -p python解释器路径 # 虚拟环境使用指定版本的python解释器
# 例:virtualenv -p D:\Python\Python39\python.exe env# --system-site-packages # 指定虚拟环境继承系统的三方库
# 添加这个参数:检索库的时候,在当前虚拟环境找不到,会到系统的三方库中查找
# 不加这个参数:检索库的时候,只会在当前的虚拟环境中查找
# 例:virtualenv --system-site-packages env# 注意:通过系统python环境创建虚拟环境的时候,并不会将系统python环境中安装的第三方库安装到虚拟环境中
创建虚拟环境
1、创建项目文件夹
2、cmd命令行工具,进入到项目文件夹
3、执行命令:
virtualenv env_name
# 如:virtualenv env
激活虚拟环境
# cmd命令行工具,进入到虚拟环境下的Scripts目录
# 执行命令:
activate 或者 activate.bat# 执行之后,可以看到cmd命令工具中的路径前面多了一个标识:(env_name)
# 例:(env) C:\Users\Administrator\Desktop\MyPro02\env\Scripts>
# 此时,就是进入到了虚拟环境中,接下来所有的操作都是在当前虚拟环境中
操作虚拟环境
pip install requests# 如果不激活创建的虚拟环境,库会被安装到全局环境;# 激活虚拟环境后,则会安装在虚拟环境中python test.py# 使用虚拟环境中的python解释器执行test.py文件# 如果test.py文件中导入了某个包,会优先到虚拟环境中去查找相关的包
退出虚拟环境
# cmd命令行工具,进入到虚拟环境下的Scripts目录
# 执行命令
deactivate 或者 deactivate.bat# 退出虚拟环境之后,cmd命令工具中的路径前面的标识(env_name)会消失
删除虚拟环境
直接删除虚拟环境的文件夹
conda
conda常用的代码
conda -V # 查看版本(V是大写)
conda create -n env_name python=3.9 # 创建python虚拟环境(指定python版本)
conda create -n env_name2 --clone env_name1 # 克隆虚拟环境
conda create -n env_name python=3.9 包名=x.x # 创建虚拟环境的同时安装指定版本的三方库
conda create -p /projects/envs/myenv python=3.9 #在指定的路径下创建虚拟环境conda activate env_name # 切换/激活虚拟环境,Linux系统前面要加source
conda deactivate # 退出虚拟环境conda config --show # 查看虚拟环境默认位置
conda install 包名=version # 在base环境中安装包
conda install -n env_name 包名 # 在指定虚拟环境安装包
activate env_name # 激活虚拟环境,Linux系统前面要加source
conda remove -n env_name --all # 移除虚拟环境及所有包
conda remove env_name 包名 # 移除指定虚拟环境中的某个包
conda env list # 查看虚拟环境列表
conda list # 查看base环境包列表
相关文章:

关于虚拟环境中遇到的bug
conda和cmd介绍 介绍 Conda 概述: Conda是一个开源包管理系统和环境管理系统,尤其适用于Python和R语言的开发环境。它允许用户创建独立的虚拟环境,方便地管理依赖包和软件版本。 特点: 环境管理:可以创建、导入、导…...
C 语言在微软平台:经典与创新的交融
在编程语言的璀璨星空中,C 语言犹如一颗耀眼的恒星,散发着永恒的光芒。当这颗恒星与微软强大的平台相互辉映时,更是碰撞出了绚丽多彩的火花,构建起了一个充满无限可能的编程世界。 C 语言与微软平台的深厚渊源 C 语言诞生于 20 …...
大数据测试中,数据仓库表类型有哪些?
本文我们一起了解一下数据仓库测试的对象,直白一点讲就是一张表,这张表分为以下几种类型: 全量表:没有分区的表,数据全量更新或者增量合并,我们通常理解就是把这些数据放到了一个文件夹里面。这样会有什么…...

基于开源库编写MQTT通讯
目录 1. MQTT是什么?2. 开发交互UI3. 服务器核心代码4. 客户端核心代码5. 消息订阅与发布6. 通讯测试7. MQTT与PLC通讯最后. 核心总结 1. MQTT是什么? MQTT(Message Queuing Terlemetry Transport)消息队列遥测协议;是…...
Kafka Connect连接器的全生命周期:
以下是基于Vue和PySide2的两种图形化界面设计方案,用于管理Kafka Connect连接器的全生命周期: 方案一:Vue3 Web管理平台 技术栈 - 前端:Vue3 + Element Plus + ECharts - 通信:Axios + WebSocket - 安全:JWT + HTTPS - 打包:Vite + Docker核心功能模块 <!-- 连接器…...

磁盘空间不足|如何安全清理以释放磁盘空间(开源+节流)
背景: 最近往数据库里存的东西有点多,磁盘不够用 查看磁盘使用情况 df -h /dev/sda5(根目录 /) 已使用 92% 咱们来开源节流 目录 背景: 一、开源 二、节流 1.查找 大于 500MB 的文件: 1. Snap 缓存…...
DeepSeek vs Grok vs ChatGPT:大模型三强争霸,谁将引领AI未来?
DeepSeek vs. Grok vs. ChatGPT:大模型三强争霸,谁将引领AI未来? 在人工智能领域,生成式模型的竞争已进入白热化阶段。DeepSeek、Grok和ChatGPT作为三大代表性工具,凭借独特的技术路径和应用优势,正在重塑…...

2025国家护网HVV高频面试题总结来了04(题目+回答)
网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 一、HVV行动面试题分类 根据面试题的内容,我们将其分为以下几类: 漏洞利用与攻击技术 …...

我的AI工具箱Tauri版-通用音频转文本
本模块支持FunAsr和FasterWhisper两种模式,可批量处理音频与视频文件,自动生成txt文本与srt字幕,满足多种应用场景需求。 工具内置FunAsr,无需额外参数调整,特别适用于中文语音的高质量转录,确保识别准确率…...
Vue.js计算属性
计算属性 基础示例 模板中的表达式虽然方便,但也只能用来做简单的操作。如果在模板中写太多逻辑,会让模板变得臃肿,难以维护。比如说,我们有这样一个包含嵌套数组的对象: js const author = reactive({name: John Doe,books: [Vue 2 - Advanced Guide,Vue 3 - Bas…...

品佳诚邀您参加 3/12『英飞凌汽车方案引领智能座舱新纪元』在线研讨会
英飞凌汽车方案引领智能座舱新纪元 時間:2025年3月12日 14:00-15:30 品佳诚邀您参加本次线上直播,深入了解英飞凌如何引领智能座舱技术革新! 随著科技的飞速发展,汽车已不再仅仅是交通工具,而是集成了丰富智能功能的…...

科普|无人机专业术语
文章目录 前言一、飞控二、电调三、通道四、2S、3S、4S电池五、电池后面C是什么意思?六、电机的型号七、什么是电机的KV值?八、螺旋桨的型号九、电机与螺旋桨的搭配 前言 无人机飞控系统控制飞行姿态,电调控制电机转速,遥控器通道控制飞行动作。电池C…...
Tauri跨平台开发问题及解决方案深度解析(React版)
Tauri跨平台开发问题及解决方案深度解析(React版) 一、环境配置与项目初始化难题(React适配) 1.1 React项目初始化 推荐模板: # 使用ReactTypeScript模板 npm create tauri-applatest -- --template react-ts# 项目…...

基于单片机和Wifi技术的智能台灯设计
摘要 :本文主要介绍了基于单片机AT89C51和Wifi技术的智能台灯的硬件和软件设计。该智能台灯具有根据当前光线自动调节灯光亮度的功能,还可对用户使用台灯时处于非正常的距离和姿态时给予报警提示,用户可以随时通过手机app查询智能台灯的报警记…...
ds回答-开源llm应用开发平台
以下是几个著名的开源 LLM 应用开发平台,涵盖不同场景和技术特点: 1. Dify 特点:低代码 / 无代码开发、支持 RAG 检索、Agent 智能体、模型管理、LLMOps 全流程优化。核心功能:可视化工作流编排、数百种模型兼容(如 GP…...
【量化策略】均值回归策略
【量化策略】均值回归策略 🚀量化软件开通 🚀量化实战教程 技术背景与应用场景 在金融市场中,价格波动是常态,但长期来看,资产价格往往会围绕其历史平均水平上下波动。均值回归策略正是基于这一现象设计的量化交易…...
iterm2更新后主题报错
报错 .oh-my-zsh/themes/agnoster.zsh-theme:307: parse error near <<<。方法1:更新Oh My Zsh主题(以agnoster为例) 适用场景:使用Oh My Zsh自带主题(如agnoster)时出现语法错误。 备份当前主题…...

深度学习架构Seq2Seq-添加并理解注意力机制(一)
第一章:人工智能之不同数据类型及其特点梳理 第二章:自然语言处理(NLP):文本向量化从文字到数字的原理 第三章:循环神经网络RNN:理解 RNN的工作机制与应用场景(附代码) 第四章:循环神经网络RNN、LSTM以及GR…...
Kafka底层结构
1. Kafka 架构总览 Kafka 是一个分布式消息队列,采用**发布-订阅(Pub-Sub)**模式,核心组件包括: Producer(生产者): 负责向 Kafka 发送消息。Broker(Kafka 服务器&…...

[BUUCTF]web--wp(持续更新中)
ps:文章所引用知识点链接,如有侵权,请联系删除 [极客大挑战 2019]EasySQL 题目类型:简单SQL注入 发现是登录页面,用万能登录方法测试,两种语句均能解出flag [极客大挑战 2019]Havefun 题目类型:代码审计…...

【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...

springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...

解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...

解析两阶段提交与三阶段提交的核心差异及MySQL实现方案
引言 在分布式系统的事务处理中,如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议(2PC)通过准备阶段与提交阶段的协调机制,以同步决策模式确保事务原子性。其改进版本三阶段提交协议(3PC…...