readchar api 이용한 방법입니다.

미해결질문
임현욱 프로필

아래 설치

pip install readchar

아래 코드 실행

import gym

from gym.envs.registration import register

import readchar

LEFT = 0

DOWN = 1

RIGHT = 2

UP = 3

arrow_keys = {

'x1b[A' : UP,

'x1b[B' : DOWN,

'x1b[C' : RIGHT,

'x1b[D' : LEFT

}

register(

id='FrozenLake-v3',

entry_point="gym.envs.toy_text:FrozenLakeEnv",

kwargs={'map_name':'4x4','is_slippery':False})

env = gym.make("FrozenLake-v3")

env.render() #환경을 화면으로 출력

while True:

key = readchar.readkey() #키보드 입력을 받는다

if key not in arrow_keys.keys():

print("Game aborted!")

break

action = arrow_keys[key] #에이젼트의 움직임

state, reward, done, info = env.step(action) #움직임에 따른 결과값들

env.render() #화면을 다시 출력

print("State:", state, "Action", action, "Reward:", reward, "Info:", info)

if done: #도착하면 게임을 끝낸다.

print("Finished with reward", reward)

break

지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스