【Python】Anaconda 使用笔记

文章目录

  • 一、创建环境
    • 1.1 在任意磁盘中创建环境
    • 1.2 添加环境路径`envs_dirs`
  • 二、安装和使用Python环境
  • 三、删除已有的Python环境


前言

笔者使用Python的目的主要是为了学习神经网络等深度学习算法。但是在学习之初配置环境的时候发现之前的环境配置一团乱麻,不仅没有将包与包之间分隔开,也没有将环境分隔开。配置新环境的之后了解到了Anaconda环境包管理工具,相见恨晚。在这里将一些使用心得和过程记录一下,以防时间使我学了等于白学。Anaconda的安装方法网上有很多文章,在这里不作赘述。

  • 参考文章
    • 如何将C盘的anaconda转移到D盘的anaconda
    • 安装Anaconda(miniconda)后如何在powershell使用conda activate命令(Windows)
  • anaconda版本:conda 24.1.2

一、创建环境

1.1 在任意磁盘中创建环境

如果需要在指定磁盘中创建环境,需要使用cd指令将命令行跳转到对应盘中去。例如,如果要在D盘中创建一个环境:

以下命令在Anaconda Prompt中使用,当然也可以在Windows PowerShell中使用,只不过需要在环境变量PATH中添加Anaconda安装路径下的Scripts文件夹才能使得conda命令可以在PowerShell或者Cmd窗口中使用。

PS C:\Users\DELL> cd d:
PS D:\> conda create -n new_python_env_name python=3.12

或者直接指定新环境的安装路径(可以在所有路径处使用):

conda create --prefix=D:/PythonEnvs/pytorch python=3.12

在上面的指令中,没有使用-n或者--name显式地指出环境的名字,但是环境的名字就是路径最后一个文件夹的名字pytorch

1.2 添加环境路径envs_dirs

PythonEnvs是存放创建出的环境的文件夹,这个文件夹的地址需要添加到环境地址变量envs_dirs中,如果不添加或添加错误,会导致虚拟环境的名称无法识别的问题(在这里将添加的路径错误地指定为了D:/PythonEnvs/pytorch,名称一样会读取失败):
在这里插入图片描述
正确的添加方式(建议路径变量使用左斜线/作为分隔符,具体原因下文会说明):

conda config --append envs_dirs D:/PythonEnvs

通过下面的命令查看添加到环境地址变量中的路径:

conda config --show envs_dirs

在这里插入图片描述

通过下面的命令删除错误添加的路径:

conda config --remove envs_dirs D:/PythonEnvs/pytorch

注意,根据笔者测试,删除时填入的路径不仅应该和添加时填入的路径相同,这里写的路径的格式也要相同。如果添加时写的路径使用了右斜线\,那么使用删除命令时就要使用右斜线作为分隔符;如果添加时使用左斜线/,那么删除时的路径就要使用左斜线作文分隔符。否则就有可能会遇到如下图所示的情况:路径明明存在,删除时却提示CondaKeyError说路径不存在。
在这里插入图片描述
使用正确的分隔符,正常删除了:
在这里插入图片描述
非常反人类设计,使我大脑旋转一小时。(也可能是Windows系统的某种关于路径变量定义的特性)

添加了正确的路径,可以看到conda正确读取了环境文件夹的名称作为环境名。

在这里插入图片描述

二、安装和使用Python环境

使用下面的命令激活和退出Python环境:

conda activate pytorch

conda deactivate

在安装时,我曾小心翼翼地将Anaconda、CUDA等环境和软件安装在D盘,以防止我可怜的C盘容量雪上加霜,但是没想到Anaconda会自动将工具包的缓存存在C盘中。将安装包缓存路径转移到D盘的操作比较麻烦,同时风险也比较大。具体可以参考这一篇知乎文章:如何将C盘的anaconda转移到D盘的anaconda。

完成以上转移操作后,就可以放心在Python环境中安装需要的工具包了。创建环境以及安装包都是在D盘,C盘的空间就不用担心炸了。可以使用以下命令安装需要的常用工具包,但是专用的工具包还是建议根据官网中的手册操作进行安装(例如Pytorch)。

pip install numpy

conda install matplotlib

前文提到,在添加环境变量PATH后可以在Windows powershell中使用conda操作,但是初次安装依然需要一些设置来实现如下图所示的效果。实现下面的效果并不是多此一举,完成后可以方便地在VSCode的终端中使用conda相关命令和安装需要的工具包。具体操作可以参考这一篇文章:安装Anaconda(miniconda)后如何在powershell使用conda activate命令(Windows)。
在这里插入图片描述
使用下面的命令查看conda安装的Python库版本信息:

conda list

在这里插入图片描述

三、删除已有的Python环境

使用anaconda进行Python环境管理的一大好处是使用环境后,如果不再需要环境或环境配置错误,可以优雅地删除掉整个环境,或者重新配置。使用下面的命令删除环境:

conda remove -n py310 --all

如果要删除的环境没有名字(名称识别错误)或者删除失败,可以尝试下面的命令(第二个命令没有尝试过,但是在学习过程中了解到了,记录在此以备不时之需):

conda -p remove D:/PythonEnvs/pytorch

conda env remove -n py310

持续更新完善中……


  原创笔记,码字不易,欢迎点赞,收藏~ 如有谬误敬请在评论区不吝告知,感激不尽!博主将持续更新有关嵌入式开发、FPGA方面的学习笔记。


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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mybatis进阶(动态SQL)

文章目录 1.动态SQL1.基本介绍1.为什么需要动态SQL2.基本说明3.动态SQL常用标签 2.环境搭建1.新建子模块2.删除不必要的两个文件夹3.创建基本结构4.父模块的pom.xml5.jdbc.properties6.mybatis-config.xml7.MyBatisUtils.java8.MonsterMapper.java9.MonsterMapper.xml10.测试Mo…

第七篇:专家级指南:Python异常处理的艺术与策略

专家级指南:Python异常处理的艺术与策略 1 引言 在编程的世界中,异常处理是一门必修的艺术。它不仅涉及到程序的错误处理,更广泛地影响着软件的稳定性、健壮性和用户体验。本篇文章将深入探讨Python中的异常处理,展示如何通过精心…

Linux:服务器间同步文件的脚本(实用)

一、功能描述 比如有三台服务器,hadoop102、hadoop103、hadoop104,且都有atguigu账号 循环复制文件到所有节点的相同目录下,且脚本可以在任何路径下使用 二、脚本实现 1、查看环境变量 echo $PATH2、进入/home/atguigu/bin目录 在该目录下…

三. Django项目之电商购物商城 -- 校验用户名 , 数据入库

Django项目之电商购物商城 – 校验用户名 , 数据入库 需要开发文档和前端资料的可私聊 一. 路由匹配获得用户名 在注册时 , 用户输入用户名 , 通过ajax请求发送到服务器 , 在路由中设置对应url , 响应视图 , 将用户输入的用户名传入视图 , 与数据库进行校验检查用户名是否重…

信息技术内涵及意义

一、信息技术及其演进趋势 (一)信息技术概况概念 信息技术(Information Technology,IT)指“应用在信息加工和处理中的科学、技术与工程的训练方法与管理技巧;上述方法和技巧的应用;计算机及其…

linux高性能服务器--Ngix内存池简单实现

文章目录 内存模型:流程图内存对齐code 内存模型: 流程图 内存对齐 对齐计算 要分配一个以指定大小对齐的内存,可以使用如下公式: 假设要分配大小为n,对齐方式为x,那么 size(n(x-1)) & (~(x-1))。 举个…

【大模型系列】大模型的上下文长度解释与拓展

文章目录 1 什么是大模型的上下文长度?2 拓展大模型上下文长度的方式参考资料 1 什么是大模型的上下文长度? 大模型的上下文长度(Context Length)是指在自然语言处理(NLP)的大型语言模型(Large…

自动的异地组网工具?

越来越多的企业和个人对远程访问和异地组网需求日益增加。为了满足这一需求,各种技术和服务也不断涌现。其中一项备受关注的技术就是自动的异地组网。本文将介绍这一技术的优势和特点。 【天联】组网的优势 天联组网技术以其卓越的性能和稳定性备受用户称赞。它的优…

数据结构:实验七:数据查找

一、 实验目的 (1)领会各种查找算法的过程和算法设计。 (2)掌握查找算法解决实际问题。 二、 实验要求 (1)编写一个程序exp8-1.cpp, 按提示输入10个任意的整形数据(无序)&…

数字旅游引领未来智慧之旅:科技应用深度重塑旅游生态,智慧服务全面升级打造极致高品质旅游体验

随着信息技术的飞速发展,数字旅游作为旅游业与科技融合的新兴业态,正以其独特的魅力和优势,引领着旅游业迈向智慧之旅的新时代。数字旅游不仅通过科技应用重塑了旅游生态,更通过智慧服务为游客带来了高品质的旅游体验。本文将深入…

从键入网址到网页显示,期间发生了什么?

从键入网址到网页显示,期间发生了什么? 孤单小弟【HTTP】真实地址查询【DNS】指南帮手【协议栈】可靠传输【TCP】远程定位【IP】两点传输【MAC】出口【网卡】送别者【交换机】出境大门【路由器】互相扒皮【服务器与客户端】相关问答 不少小伙伴在面试过程…

浅谈Agent AI智能体的未来

Agent AI智能体的未来非常广阔和潜力巨大。随着技术的发展和应用场景的不断拓展,我们可以期待以下几个方面的发展: 更加智能化:Agent AI智能体将会变得越来越智能,具备更强大的学习、推理和决策能力。它们可以通过大数据和机器学习…

java序列化和反序列化基础学习

一、前言 前文分析了java的反序列化的DNSURL利用链,但是对于java反序列化的一些过程不是很了解,这篇主要记录下学习java反序列基础知识 二、原理 概念 1、什么是序列化和反序列化 (1)Java序列化是指把Java对象转换为字节序列…

【C++】一篇文章带你深入了解stack、queue 和 priority_queue

目录 一、stack的介绍和使用1.1 stack的介绍1.2 stack的使用1.2.1.1 [stack对象的构造](https://legacy.cplusplus.com/reference/stack/stack/stack/)1.2.1.2 stack对象的容量操作1.2.1.2.1 [empty()函数](https://legacy.cplusplus.com/reference/stack/stack/empty/)1.2.1.2…

周三多《管理学原理》第3版/考研真题/章节练习题

普通高等教育“十一五”国家级规划教材《管理学原理》(第3版,周三多、陈传明、龙静编著,南京大学出版社)是我国高校广泛采用的管理学权威教材之一,也被众多高校(包括科研机构)指定为考研考博专业…

UDP/TCP

udp/tcp特征 udp: 无连接不可靠传输面向数据包全双工 tcp: 有连接可靠传输面向字节流全双工 解释: 有连接/无连接:发送消息时,对方是否必须要在线 比如我们聊天程序,我们给对方发送消息,是不管现…

C++笔试练习笔记 【2】: 数字统计 BC153 两个数组的交集 NC313 点击消除 AB5

文章目录 数字统计分析题目代码部分 两个数组的交集题目分析代码部分 点击消除题目解析代码部分 数字统计 分析题目 这个题涉及到两个知识点,就是枚举和数字的拆分 那么我的思路是进行遍历,拆分数字判断二的个数,枚举进行计数 那么数字的拆分…

C++协程库封装

操作系统&#xff1a;ubuntu20.04LTS 头文件&#xff1a;<ucontext.h> 什么是协程 协程可以看作轻量级线程&#xff0c;相比于线程&#xff0c;协程的调度完全由用户控制。可以理解为程序员可以暂停执行或恢复执行的函数。将每个线程看作是一个子程序&#xff0c;或者…

java同步大量数据到本地数据库方法总结

最近在做一个需求&#xff0c;就是我需要对三方接口调用的数据存放到本地的数据库里的数据表里面。那么一开始我就是直接一条一条save&#xff0c;结果发现耗时非常严重&#xff0c;后面我就进行了改进。就是分批次去同步或者分批次去异步。 现在我直接贴出我写的代码&#xf…

《MySQL对数据库中表的结构的操作》

文章目录 一、建表二、查看表结构所有能查看到数据库&#xff0c;表的操作痕迹的本质都是服务器保存下来了这些操作记录。 三、修改表1.改表名字2.添加表记录3.添加表的更多字段4.修改表的字段5. 删除表的字段 总结 以下的数据库表的操作全是基于user_db这个数据库操作的&#…