AssertionError: The environment must specify an action space. 报错 引发的惨案

起因是:从github上下载了一个代码,运行出错。

整体流程:

1. AssertionError: The environment must specify an action space.

报错,解决方案是 降级gym到 gym==0.18.0

2.为了降级gym gym==0.18.0 报错,发现需要降级 setuptools ==65.5.0

3.降级setuptools ==65.5.0 之后报错  failed  build wheel for Pillow。

4.最终发现 要想安装 gym==0.18.0,得让pilow < 7.2.0版本

5.安装 Pillow 7.2.0版本,结果 发现还是报错,经研究 Pillow 7.2.0 只支持 python 3.8以下,而我的python是 3.9版本。于是最终方案只能是重装 python 3.8环境。在开一个帖子记录流程吧。

目录

1. AssertionError: The environment must specify an action space.

2.于是安装gym ==0.18.0报错,需要重装setuptools

3.于是安装  setuptools ==65.5.0,

4.再次安装  gym==0.18.0报错   failed to build wheel for Pillow

5.于是降级Pillow

6.之后再次安装 gym  还是不行,发现gym 0.18.0版本必须对应Pillow <7.2.0,然而 查看这个网页发现pillow 7.2.0只支持 python 3.8以下,我的python是 3.9. 完犊子,重装一个python环境吧。


1. AssertionError: The environment must specify an action space.

AssertionError:环境必须指定操作空间-腾讯云开发者社区-腾讯云 (tencent.com)

Solution: 帖子中说明需要把gym降级到0.18.0

2.于是安装gym ==0.18.0报错,需要重装setuptools

3.于是安装  setuptools ==65.5.0,

4.再次安装  gym==0.18.0报错   failed to build wheel for Pillow

5.于是降级Pillow

6.之后再次安装 gym  还是不行,发现gym 0.18.0版本必须对应Pillow <7.2.0,然而 查看这个网页发现pillow 7.2.0只支持 python 3.8以下,我的python是 3.9. 完犊子,重装一个python环境吧。

Installation - Pillow (PIL Fork) 10.2.0.dev0 documentation

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

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

相关文章

Android---Kotlin 学习009

继承 在 java 里如果一个类没有被 final 关键字修饰&#xff0c;那么它都是可以被继承的。而在 kotlin 中&#xff0c;类默认都是封闭的&#xff0c;要让某个类开放继承&#xff0c;必须使用 open 关键字修饰它&#xff0c;否则会编译报错。此外在子类中&#xff0c;如果要复写…

助力打造清洁环境,基于YOLOv7开发构建公共场景下垃圾堆放垃圾桶溢出检测识别系统

公共社区环境生活垃圾基本上是我们每个人每天几乎都无法避免的一个问题&#xff0c;公共环境下垃圾投放点都会有固定的值班时间&#xff0c;但是考虑到实际扔垃圾的无规律性&#xff0c;往往会出现在无人值守的时段内垃圾堆放垃圾桶溢出等问题&#xff0c;有些容易扩散的垃圾比…

二维码智慧门牌管理系统:提升社区管理智能化水平

文章目录 前言一、全方位信息录入与查询二、公安权限账户访问的公安大数据后台三、社区工作人员申请权限安装录入软件四、业主通过移动终端扫描标准地址二维码门牌自主申报录入五、系统的价值 前言 在数字化时代&#xff0c;社区管理面临着更新流动人口信息、准确录入六实相关…

Jupyter Notebook的安装及在网页端和VScode中使用教程(详细图文教程)

目录 一、Jupyter Notebook1.1 组成组件1.2 优点1.3 常规用途 二、安装及使用2.1 网页端2.1.1 安装Jupyter Notebook2.1.2 检验是否安装成功2.1.3 启动Jupyter Notebook2.1.4 使用Jupyter Notebook 2.2 VScode中安装及使用2.2.1 安装Jupyter2.2.2 使用Jupyter 三、常用命令3.1 …

SpringBoot Event,事件驱动轻松实现业务解耦

什么是事件驱动 Spring 官方文档AWS Event Driven 简单来说事件驱动是一种行为型设计模式&#xff0c;通过建立一对多的依赖关系&#xff0c;使得当一个对象的状态发生变化时&#xff0c;所有依赖它的对象都能自动接收通知并更新。即将自身耦合的行为进行拆分&#xff0c;使拆…

Rancher小白学习之路

官网&#xff1a;http://docs.rancher.cn/docs/rancher1/rancher-service/load-balancer/_indexhttp://docs.rancher.cn/docs/rancher1/rancher-service/load-balancer/_indexRancher2.5集群搭建&K3S生产环境搭建手册 - 知乎 【rancher教程】十年运维大佬两小时带你搞定ran…

Django-REST-Framework 如何快速生成Swagger, ReDoc格式的 REST API 文档

1、API 接口文档的几种规范格式 前后端分离项目中&#xff0c;使用规范、便捷的API接口文档工具&#xff0c;可以有效提高团队工作效率。 标准化的API文档的益处&#xff1a; 允许开发人员以交互式的方式查看、测试API接口&#xff0c;以方便使用将所有可暴露的API接口进行分…

C语言字符串处理提取时间(ffmpeg返回的时间字符串)

【1】需求 需求&#xff1a;有一个 “00:01:33.90” 这样格式的时间字符串&#xff0c;需要将这个字符串的时间值提取打印出来&#xff08;提取时、分、秒、毫秒&#xff09;。 这个时间字符串从哪里来的&#xff1f; 是ffmpeg返回的时间&#xff0c;也就是视频的总时间。 下…

CMMI-项目总体计划模版

目录 1、总体目录结构 2、重点章节概要示例 2.1 第四章 项目管理 2.2 第六章 实施与交付计划 2.3 第七章 运维计划 1、总体目录结构 2、重点章节概要示例 2.1 第四章 项目管理 2.2 第六章 实施与交付计划 2.3 第七章运维计划

Mybatis如何兼容各类日志?

文章目录 适配器模式日志模块代理模式1、静态代理模式2、JDK动态代理 JDBC Logger总结 Apache Commons Logging、Log4j、Log4j2、java.util.logging 等是 Java 开发中常用的几款日志框架&#xff0c;这些日志框架来源于不同的开源组织&#xff0c;给用户暴露的接口也有很多不同…

网络安全保障领域

计算机与信息系统安全---最主要领域 云计算安全 IaaS、PasS、SaaS(裸机&#xff0c;装好软件的电脑&#xff0c;装好应用的电脑) 存在风险&#xff1a;开源工具、优先访问权、管理权限、数据处、数据隔离、数据恢复、调查支持、长期发展风险 云计算安全关键技术&#xff1a;可信…

(C++)DS哈希查找—二次探测再散列(附思路和详细注释)

Description 定义哈希函数为H(key) key%11。输入表长&#xff08;大于、等于11&#xff09;&#xff0c;输入关键字集合&#xff0c;用二次探测再散列构建哈希表&#xff0c;并查找给定关键字。 Input 测试数据组数 1≤&#xfffd;≤50. 每组测试数据格式如下&#xff1a…