conda虚拟环境列表错误module ‘attr‘ has no attribute ‘s‘的解决方法

news2024/10/6 12:25:19

列出虚拟环境列表命令:conda info -e 或者conda env list
conda info -e 这个可以正常显示,conda env list却报错了,以前是没有问题的,因为这个命令我更习惯使用,所以这个小问题必须解决掉,或许其他读者可能也会遇到同样的错误:

 Traceback (most recent call last):
  File "D:\Anaconda3\Scripts\conda-env-script.py", line 6, in <module>
    from conda_env.cli.main import main
  File "D:\Anaconda3\lib\site-packages\conda_env\cli\main.py", line 37, in <module>
    from . import main_attach
  File "D:\Anaconda3\lib\site-packages\conda_env\cli\main_attach.py", line 2, in <module>
    from ..utils.notebooks import Notebook
  File "D:\Anaconda3\lib\site-packages\conda_env\utils\notebooks.py", line 5, in <module>
    import nbformat
  File "D:\Anaconda3\lib\site-packages\nbformat\__init__.py", line 33, in <module>
    from .validator import validate, ValidationError
  File "D:\Anaconda3\lib\site-packages\nbformat\validator.py", line 12, in <module>
    from jsonschema import ValidationError
  File "D:\Anaconda3\lib\site-packages\jsonschema\__init__.py", line 11, in <module>
    from jsonschema.exceptions import (
  File "D:\Anaconda3\lib\site-packages\jsonschema\exceptions.py", line 152, in <module>
    @attr.s(hash=True)
AttributeError: module 'attr' has no attribute 's'

错误的原因是模块attr没有属性s,于是将含有attr的文件打开,比如exceptions.py,_types.py将里面的@attr.s(hash=True)_cause = attr.ib()等相关都注释看下效果,不出所料这样就会出现新的错误,比如TypeError: object() takes no parameters
所以这种简单注释掉的方法不可行,排除。 

然后查看Anaconda3\Lib\site-packages里面,有包含attrattrs这两个目录,也就是说这两个模块都是有安装的。
难道是attr模块没有属性s吗?也不是这个原因,因为以前是可以正常使用的。我们也可以加载模块,查看下就明白了:

import attr
dir(attr)

#['Attribute', 'Factory', 'NOTHING', 'VersionInfo', '__all__', '__author__', '__builtins__', '__cached__', '__copyright__', '__description__', '__doc__', '__email__', '__file__', '__license__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__title__', '__uri__', '__url__', '__version__', '__version_info__', '_cmp', '_compat', '_config', '_funcs', '_make', '_next_gen', '_version_info', 'absolute_import', 'asdict', 'assoc', 'astuple', 'attr', 'attrib', 'attributes', 'attrs', 'cmp_using', 'converters', 'dataclass', 'define', 'division', 'evolve', 'exceptions', 'field', 'fields', 'fields_dict', 'filters', 'frozen', 'get_run_validators', 'has', 'ib', 'make_class', 'mutable', 'partial', 'print_function', 'resolve_types', 's', 'set_run_validators', 'setters', 'sys', 'validate', 'validators']

可以看到这个里面是有sib方法的

那只能是后期经常有安装和更新新的东西造成的。于是将这两个模块给卸载掉,然后重新安装:

pip uninstall attr
pip uninstall attrs
pip install attrs

问题解决了,恩,对于这种类似模块缺少属性等错误,或许重新安装模块是最快捷的,当然有些错误,更多的可能是版本兼容问题,这个需要注意。

其他关于conda的使用,比如最开始下载安装Anaconda之后的第一步,想修改地址,容易忘记.condarc文件在哪个地方:

可以输命令:conda info

这样就将conda的版本与配置相关信息显示出来了:

另外就是创建虚拟环境是最重要的一个功能,这里也重复贴出来,方便大家更熟知:

conda create -n xxx python=yyy

比如指定Python版本为3.7,虚拟环境名称为tf: conda create -n tf python=3.7

创建虚拟环境好了之后,可以通过上面的命令查看你的系统创建了多少个虚拟环境,想要进入到哪个虚拟环境,输入命令激活即可:activate xxx

当然如果conda版本在4.4以上,命令为:conda activate xxx

虽然是一个比较小的问题,同样的在解决问题的过程中,也是会有新的收获! 

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

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

相关文章

undetected_chromedriver解决网页被检测

一、问题分析 selenium打开浏览器模仿人工操作是诸多爬虫工作者最万能的网页数据获取方式&#xff0c;但是在做自动化爬虫时&#xff0c;经常被检测到是selenium驱动。比如前段时间selenium打开维普高级搜索时得到的页面是空白页&#xff0c;懂车帝对selenium反爬也很厉害。 二…

【React】setState原理,SCU,不可变对象,Ref,受控组件,高阶组件,封装轮播图组件

❤️ Author&#xff1a; 老九 ☕️ 个人博客&#xff1a;老九的CSDN博客 &#x1f64f; 个人名言&#xff1a;不可控之事 乐观面对 &#x1f60d; 系列专栏&#xff1a; 文章目录 setState原理setState异步更新 SCU不可变对象RefRef获取DOMRef获取组件 非受控组件受控组件高阶…

word目录怎么自动生成,3个步骤轻松搞定!

案例&#xff1a;我在做策划案的时候&#xff0c;需要制作目录。我觉得自己手动制作目录很困难&#xff0c;通过word的可以自动生成目录&#xff0c;但是我不知道具体的操作方法。有没有小伙伴可以分享一下&#xff1f; 在制作任务书、书写论文的时候&#xff0c;经常需要添加…

vue+java+springboot企业办公人事oa办公管理系统2142g

本企业OA管理系统有管理员和用户。管理员功能有个人中心&#xff0c;用户管理&#xff0c;公告信息管理&#xff0c;客户关系管理&#xff0c;通讯录管理&#xff0c;日程安排管理&#xff0c;车辆信息管理&#xff0c;文件信息管理&#xff0c;工作日志管理&#xff0c;上班考…

0基础学习VR全景平台篇第42篇:编辑器底部菜单-分组管理

大家好&#xff0c;欢迎观看蛙色VR官方系列——后台使用课程&#xff01; 本期为大家带来蛙色VR平台&#xff0c;底部菜单—分组管理功能操作。 功能位置示意 一、本功能将用在哪里&#xff1f; 分组管理&#xff0c;指观看者可点击不同分组&#xff0c;查看不同类型全景内容…

learn C++ NO.9——string(2)

引言&#xff1a; 现在是北京时间的2023年6月15日早上的10点14分。时间过得飞快&#xff0c;现在已经大一的最后一个星期了。明天也是大一最后一次课&#xff0c;线下的实训课。线下实训内容为c语言二级的内容&#xff0c;对我来说跟学校的课效率太低下了&#xff0c;我还是比…

初识网络之再看udp协议

目录 一、端口号 1. 五元组 2. 端口号范围划分 3. 一些知名端口号 4. 进程与端口号 5. 两个常用网络工具 5.1 netstat 5.2 pidof 二、UDP协议 1. udp协议格式 2. udp报文解包 3. udp报文分用 4. udp的特点 5. 缓冲区 5.1 tcp缓冲区 5.2 udp缓冲区 6. 一些常见…

函数重载异常的常见原因

函数重载异常的常见原因 使用重载函数时&#xff0c;如果数据类型不匹配&#xff0c;C尝试使用类型转换与形参进行匹配&#xff0c;如果转换后有多个函数能匹配上&#xff0c;编译将报错。引用可以作为函数重载的条件&#xff0c;但是&#xff0c;调用重载函数的时候&#xff0…

Linux:端口

端口是设备与外界进行通讯的出入口&#xff0c;端口可以分为物理端口和虚拟端口 物理端口&#xff1a;又叫接口&#xff0c;是可见的端口&#xff0c;比如HDMI端口、USB接口虚拟端口&#xff1a;是指计算机内部的端口&#xff0c;用来操作系统和外部进行交互使用 通过IP地址只能…

6.python高频函数-处理缺失值isnull()、fillna()、dropna()

前言 如何判断pandas.DataFrame、Series是否包含缺失值NaN以及如何处理缺失值NaN。 Part.1 isnull() 函数 使用 isnull()、isna() 确定每个元素的缺失值 如果值为 NaN&#xff0c;则值为 True&#xff0c;如果不是&#xff0c;则值为 False。 读取数据集 panel_data pd.r…

从C语言到C++_19(容器适配器+stack和queue模拟实现+优先级队列priority_queue)

目录 1. 容器适配器 1.1 什么是适配器 1.2 STL标准库中stack和queue的底层结构 2. stack和queue的模拟实现 2.1 stack模拟实现 2.2 queue的模拟实现 3. deque的介绍(了解) 3.1 deque的实现原理 3.2 deque的缺陷和使用场景 4. 优先级队列 priority_queue 4.1 priorit…

编码规范、Git分支整理

代码命名规范 包命名规范 采用反域名命名规则&#xff0c;全部使用小写字母。一级包名为com&#xff0c;二级包名kl&#xff08;为公司名称&#xff0c;可以简写&#xff09;&#xff0c;三级包名pos&#xff08;根据应用进行命名&#xff09;&#xff0c;四级包名activity或…

芳禾数据CTO李明:数据分类分级与治理驱动下的应用革命丨数据猿专访

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 我们进入数字化时代&#xff0c;数据已经变得比任何时候都更加关键。每天&#xff0c;我们都在生成、处理和存储海量的数据&#xff0c;这些数据在企业决策、市场研究、产品开发等方面扮演着重要的角色。然而&#xff0c;数…

Qt编写精美输入法(历时十年迭代/可换肤/支持Qt4/5/6/win/linux/mac/嵌入式等)

一、前言 大概是从2012年就开始研究用Qt写输入法&#xff0c;因为项目需要&#xff0c;嵌入式板子上&#xff0c;没有对应的输入法&#xff0c;当初使用过很多NVR&#xff0c;里面也是鼠标按下弹出输入法面板进行输入&#xff0c;可以切换数字和字母及中文&#xff0c;于是借鉴…

5大趋势与10大应用场景!未来的智能工厂要这么建...

在经济下行压力、人口红利消失、消费结构升级、疫情冲击等多种因素推动下&#xff0c;制造企业加快转型步伐&#xff0c;工厂正向高效化、智能化、绿色化方向跃迁升级&#xff0c;不断涌现出技术创新、应用领先、成效显著的智能工厂。 近日&#xff0c;中国信息通信研究院发布…

常见的台账在线、可视化数据看板工具

目前已知和常见的一些在线可视化数据看板工具&#xff1a; Trello&#xff1a;Trello 是一种流行且直观的看板工具&#xff0c;可让创建看板、列表和卡片来管理任务和项目。它提供了一个可视化界面&#xff0c;可以在其中跨工作流程的不同阶段拖放卡片。还可以添加截止日期、标…

cesium调用celestrak接口获取卫星数据

celestrak是一家免费开源提供卫星空间数据的非营利性组织 接口调用 import axios from "axios";const BASE_URL "https://celestrak.org";function getTleDataFromExternal(path "") {let uri ${BASE_URL}/NORAD/elements/gp.php?GROUP${…

复习并发编程的基础知识之线程池

并发编程中&#xff0c;线程池是很重要的一块内容。 线程池是一种池化技术&#xff0c;线程池、字符串常量池和数据库链接池都属于池化技术。 使用线程池的好处&#xff1a; 1.提高了线程的利用率&#xff08;想一想&#xff0c;我们不可能每打一个电话&#xff0c;就去买一部手…

Unity编辑器扩展-第三集-添加按钮到组件菜单并且重置组件

第二集链接&#xff1a;Unity编辑器扩展-第二集-按钮排序/分组/放入右键菜单_菌菌巧乐兹的博客-CSDN博客 一、本节目标效果展示 1.把按钮放到组件菜单上 2.做一个类似Reset功能&#xff0c;点一下能改变里面的数据 二、 把按钮放到组件菜单上 如上图&#xff0c;我的的组件名…

echarts 配置相关

echarts更多模板链接 http://chart.majh.top/ 1、echarts.clear()是清空当前实例&#xff0c;会移除实例中所有的组件和图表。 echarts.dispose()是销毁实例&#xff0c;销毁后实例无法再被使用。 this.chart.dispose() this.chart.clear(); // 清空图表2、series虽然是[] 数…