跟随着gym的教程,准备把自己写的环境注册在gym的envs上面,
过程如下:

第⼀步,将我们⾃⼰的环境⽂件(笔者创建的⽂件名为 Myenv.py,类名为ReEnv )
拷⻉到你的gym安装⽬录/gym/envs/classic_control⽂件夹中(拷⻉在此
⽂件夹中是因为要使⽤rendering模块。当然本⽅法并不是唯⼀的,也可以
采⽤其他办法。)。
第⼆步,打开该⽂件夹(第⼀步中的⽂件夹)下的__init__.py⽂件,
在⽂件末尾加⼊语句:

from gym.envs.classic_control.Myenv import ReEnv

第三步,进⼊⽂件夹的gym安装⽬录/gym/gym/envs,打开该⽂件夹下
的__init__.py⽂件,添加代码:

register(id='My_env',entry_point='gym.envs.classic_control:ReEnv ',
)

反复对比官方文档发现并无纰漏,但是仍然import gym就报错:

Error: Attempted to register malformed environment ID: My_env. (Currently all IDs must be of the form ^(?:[\w:-]+\/)?([\w:.-]+)-v(\d+)$.)

后来经过一顿琢磨:
register这个id可以随便写,但是要注意的是,id中最后要带 -v() 括号里为数值,满足此格式才行,最终改为:

register(id='My_env-v0',entry_point='gym.envs.classic_control:ReEnv ',
)

成功!

此时又发现一个问题:
比如,注册一个环境是报错:

Error: Attempted to register malformed environment ID: My_env. (Currently all IDs must be of the form ^(?:[\w:-]+\/)?([\w:.-]+)-v(\d+)$.)

将注册相关代码注释掉,不重启控制台的话,会报错:

Error: Cannot re-register id: Copy-v0

其中Copy-v0是gym源码中默认的第一个环境,此时需要重启控制台,即可
这个问题反映了,对于python的一个包来说,一次import,后续再在控制台import 同名包,则实际不会将新改动的同名包加载进入内存,还是旧包,所以改动包的源码后,需要重启或打开新的控制台来导入

gym注册customer env 报错:Attempted to register malformed environment ID:My_env相关推荐

  1. c# 传递Null的string值导致的调用C++的dll报错 Attempted to read or write protected memory.

    c# 调用C++的dll报错 Attempted to read or write protected memory: 原因是:c# 传递Null的string值导致的,将Null改为string.e ...

  2. SVN提交报错 Attempted to lock an already-locked dir

    本文主要介绍SVN报错"Attempted to lock an already-locked dir" 笔者在SVN提交遇到被锁定状态,在该文件的目录下,使用指令 cleanup ...

  3. Vue报错------did you register the component correctly? For recursive components, make sure to provide

    今天在开发项目的时候遇到很大坑.项目报错did you register the component correctly? For recursive components, make sure to ...

  4. tomcat配置报错解决方法 The jre_home environment variable is not defined correctly

    tomcat配置报错解决方法 The jre_home environment variable is not defined correctly 参考文章: (1)tomcat配置报错解决方法 Th ...

  5. 本机未装Oracle数据库时Navicat for Oracle 报错:Cannot create oci environment 原因分析及解决方案

    本机未装Oracle数据库时Navicat for Oracle 报错:Cannot create oci environment 原因分析及解决方案 参考文章: (1)本机未装Oracle数据库时N ...

  6. GEE报错Tile error: Error in map(ID=198102T01):Element.copyProperties: The source parameter is require

    人菜且爱玩,分享一些常见的GEE报错现象以及解决方案,希望对大家能够有所帮助. 本文以ERA5-land数据集为例介绍The source parameter is require应该如何解决. GE ...

  7. a java runtime enviroment jre or java de,手把手教你启动报错:A java Runtime Environment(JRE)…...

    电脑现已成为我们工作.生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到启动报错:A java Runtime Environment(JRE)-的问题,如果我们遇到了启动报错:A java ...

  8. SVN插件提交报错Attempted to lock an already-locked dir svn: Working copy

    Attempted to lock an already-locked dirsvn: Working copy myeclipse用svn提交的时候报错: Attempted to lock an ...

  9. 【软件安装】Win11安装SolidWorks2018 跳过注册机error6报错

    #部分操作参考来自:唐赫兹-保姆级教程 文字步骤:唐赫兹 #这里只列出一些与教程不同的个人操作 第一步:如果装有其他版本可在卸载时选择"高级选项"-"注册表条目" ...

最新文章

  1. 命令行下执行带参数php
  2. vim查找忽略大小写
  3. linux 模式表达式,linux正则表达式和扩展表达式
  4. mysql单表最大数据量_你的Mysql库真需要Adaptive Hash Index
  5. ImportError: No module named 'pip._vendor.retrying'
  6. oracle大于条件,oracle中sql语句中的in的条件数量大于1000有问题
  7. 无法拯救的 Wear OS!
  8. Linux创建与删除用户
  9. Linux设备驱动模型-Kset
  10. win32汇编实现一个时钟
  11. keras图像风格迁移
  12. 操作系统软件测试,什么是操作系统_app软件测试全栈系列精品课程_功能测试视频-51CTO学堂...
  13. 城市轨道交通运营管理属于什么院系_城市轨道交通运营管理专业
  14. 北京市小汽车摇号程序的反编译、算法及存在的问题浅析
  15. zeplin 登录效果实现
  16. 有关textField左视图leftView和书写位置的设置
  17. dotnetbar-SuperTabControl禁止调整顺序
  18. correl函数相关系数大小意义_correl(correl函数相关系数大小意义)
  19. Windows11 安装教程(ultraiso制作启动盘)
  20. 用于大数据的星际文件系统

热门文章

  1. r9m刷机包root,r9s 刷机包
  2. VMware该虚拟机似乎正在使用中。如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权
  3. aircrack_hashcat非字典高速破解目标无线密码
  4. 内存条是怎么存储数据的?
  5. 企业网站建设专家-PageAdmin企业网站管理系统
  6. cocos2dx实现单机版三国杀(二)
  7. 计算两个数平均值的三种方法
  8. 循环车轮c语言,2021nian 驾驶员kaoshikemuyi
  9. MacOS教程_如何在Mac上设置自定义锁屏消息?
  10. 5G对定位技术的影响