def get_action(self, board):
try:
location = input("Your move: ")
if isinstance(location, str): # for python3
location = [int(n, 10) for n in location.split(",")] #分割两个数字
move = board.location_to_move(location)
except \
Exception as e:
move = -1
if move == -1 or move not in board.availables:
print("invalid move")
move = self.get_action(board)
return move
board 是函数的参数,可是move那里,board却调用了另外一个函数,实在不懂,请指教。
学习python,切记,万物皆对象,这里的board参数,传入实参的时候,就是传一个对象入来的。所以代码里面把board看作是一个对象,完全没有问题。
而这一行代码,是调用了对象board的成员函数location_to_move来处理location,并且把处理结果返回给move。
move = board.location_to_move(location)
觉得有帮助,记得采纳本答案哦!