AI Gym 环境:尽管所有步骤都正确,但没有发现模块错误

AI Gym environment: no module found error despite all steps correct

我非常确定我按照正确的步骤在 AI Gym 中注册了我的自定义环境。但是当 one __ init__.py 文件无法识别文件夹并且没有找到模块错误时,我遇到了一个问题。 我通过 OneDrive 使用 Anaconda Jupyterlab 以便它同步并且我工作来自任何设备。

路径为C->用户->我的名字->OneDrive->My_code->gym_mycode

  1. gym_mycode--> envs文件夹和第一个__init__.py文件
  2. envs 内部-->再过一秒 __ init__.py、custom_env 和一些其他文件

我第一个__init__的内容是:

from gym.envs.registration import register
register(id="PyABCD-v0", entry_point="gym_mycode.envs:CustomEnv_class")

envs 文件夹中我的第二个 __ init__ 的内容是:

from gym_mycode.envs.custom_env import CustomEnv_class

第二个给我错误 No module named 'gym_mycode'。它怎么可能不识别 gym_mycode 文件夹?是不是因为我在 OneDrive 中操作这整个东西而不是某个 Anaconda 特定文件夹?

I 运行 首先是第一个初始化,然后是环境中的第二个初始化。希望运行ning这个顺序是正确的。

编辑 根据要求,下面是当前目录和回溯。

os.getcwd()C:\Users\HP\OneDrive\My_code\gym_mycode\envs

ModuleNotFoundError                       Traceback (most recent call last)
Input In [23], in <cell line: 6>()
      3 import sys
      4 sys.path.append('C:\Users\HP\OneDrive\My_code\gym_mycode')
----> 6 from gym_mycode.envs.custom_env import CustomEnv_class

ModuleNotFoundError: No module named 'gym_mycode'

代码可能在不同的文件夹中运行(current working directory - 检查os.getcwd())然后import在不同的文件夹中搜索模块gym_mycode

您可能需要在 import gym_mycode

之前将文件夹 /full/path/to/My_code 添加到 sys.path

常见的错误是添加文件路径,但它必须是文件夹路径。

import sys
sys.path.append("/full/path/to/My_code")      # add at the end of list
#sys.path.insert(0, "/full/path/to/My_code")  # add at the beginning of list

import gym_mycode