事情是这样的,我在玩《强化学习纲要》RL(btw看了两节感觉讲的很好),(虽然也是openAI的)其github上这样写道:
python my_random_agent.py Pong-ram-v0
是的我们windows的路径有两条杠\\,稍加思考,偶尔也是一条杠?
cmd还不能直接cd d 来从c盘切换到d盘,当然了直接打d不香吗? 是的我们还不显示扩展名,你确定你打开的是file.yaml不是file.yaml.yaml吗?
一般windows默认路径是c:\user,这里先修改默认路径,方便后续操作。 (常见的搜索结果,修改注册表,“HKEY_CURRENT_USER\Software\Microsoft\CommandProcessor”,对不起我没找到CommandProcessor)
打开cmd所在位置。
点击右键,选择属性。
把起始位置修改成你想的位置即可。
我在Anaconda新建了一个环境叫rl,用来装强化学习的包(gym, PyTorch等),然后加入ipykernel(可以用在jupyter notebook),然后在cmd,import gym,显示no module, 这里暂时的解决(丑陋的),在sys.path上append其绝对路径。这里填上自己的路径,我的是sys.path.append('F:\\Anaconda\\envs\\rl\\Lib\\site-packages') 这里想了想大概可以sys.path.append(os.getcwd()) 但是好像也不是很完美?不管了我现在要睡觉了
F:\\iPynb\\RL\\RLexample
这里前两个游戏可以运行,所以不是没装gym的问题,但第三个不行,我不知道是为什么 我只知道jupyter特别麻烦,早上找了一早上之前看过的一篇博客的打印版,就是没找到,气死我了。那篇是18年的,大概是说。
Jupyter kernels are disconnected from Jupyter’s shellthe shell environment and the Python executable are disconnectedPython executable has its own site-packages:meaning when you install a package, it is associated with particular python executablehow Jupyter chooses to execute Python code, i.e. concept of a Jupyter Kernel.其实我在jupyter lab也试了一下,我想着那不是有terminal,但是好像也不太行。
这里interpreter配一下(不展示了),可以直接运行.py文件,是可以运行模型的:
但是用那个命令!python my_random_agent.py Pong-ram-v0就是不行,我是在Terminal
话说我发现这里可以手动选择run .pyin console,然后进行一些修改,但是我也不太弄得清楚
选择run .pyin console,然后进行一些修改,但是我也不太弄得清楚
我稍微看了一下我不想挣扎了 大概就是windows不一样 他这个应该是一个.py文件 就是一个模块 ,不是说文件夹才叫包吗? 然后win下 python 不知道是sys path还是executable引起的这个问题 反正现在pycharm能用我不管了没空弄 如果是jupyter的话又要加一个jupyter的sys path shell executable谁有空有兴趣研究吧我不挣扎了我溜了 不知道pycharm的terminal和cmd分别用的什么 不管了 下次再说