2017-04-17 1 views
2

나는 이와 같은 코드를 가지고 있습니다. 하지만 내 주 프로그램에서 호출 할 때마다 nextMove() 함수로 다른 동작을 반환하는 방법을 모르겠습니다. 나는 초보자, pls 도움이됩니다.매 턴마다 임의의 nextMove 상태를 어떻게 얻을 수 있습니까?

class Player: 
    def __init__(self, str_name): 
     self.str = str_name 

    def __str__(self): 
     return self.str 

    def nextMove(self, state): 
     result = [(1,1),(2,2)] 
     return result 
+0

이동의 가능성은 무엇입니까? – TrakJohnson

+0

범위는 0에서 7까지입니다 (영어 초안 표). 이미 무작위 라이브러리를 사용하여 해당 클래스에서 4 개의 변수를 만들려고했지만 오류가 발생했습니다. –

답변

1

시도 :

from random import randint 

class Player: 
    def __init__(self, str_name): 
     self.str = str_name 

    def __str__(self): 
     return self.str 

    def nextMove(self, state): 
     result = [(randint(0,8),randint(0,8)) for _ in range(2)] 
     return result 


if __name__ == "__main__": 
    player = Player('Simba') 
    for i in range(5): 
     print(player.nextMove('Safari')) 

# [(10, 2), (2, 4)] 
# [(4, 0), (10, 0)] 
# [(3, 0), (4, 4)] 
# [(8, 4), (2, 3)] 
# [(4, 4), (2, 1)] 

nextMove 방법을 정의하는 방법을 매우 명확하지 않다. state 매개 변수는 메소드 정의의 어느 곳에서도 사용되지 않습니다. 따라서 필자는 "Safari"로 설정했습니다.

이 정보가 유용하게 사용되기를 바랍니다.

+0

이 클래스에 변수를 만들어 결과에 넣을 수 있습니까? 시도했지만 실패했습니다. –

+0

@ congbang10h 일부 코드 및 오류 추적 코드를 제공하십시오. 요청한 내용이 확실하지 않습니다. – TrakJohnson

+0

다른 세부 주제를 게시하면 해당 주제를 이동하고 전체 프로그램을 볼 수 있습니다. [link] (http://stackoverflow.com/questions/43464930/how-to-utilize-minimax-algorithm-in-english-checkers-game). 도움 주셔서 감사합니다. @TrakJohnson –

관련 문제