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