wxybuaa 2019-08-07 22:17
浏览 153

有大佬可以解释一下这个代码吗?

import random
import actions as Act

class Bot:
max_tower = 30
def init(self, player_id):
self.player_id = player_id

def inject_data(self, data):
    pass

def get_action(self, obs, bg = None, max_opt=3):
    # if self.player_id == 0:
    #     obs['player_info'][1]['lives'] = 100
    # print (obs['player_info'][1]['lives'])
    action_seq = []
    for i in range(max_opt):
        action_seq.append(self._get_random_action())
    return action_seq

def game_over(self, winner, obs):
    pass

def _get_random_action(self):
    d1 = random.choice(list(Act.Actions))
    if d1 == Act.Actions.NOOP:
        return Act.noop()
    elif d1 == Act.Actions.BUY_TOWER:
        type = random.randint(0, 1)
        slot = random.randint(0, self.max_tower)
        return Act.buy_tower(type, slot)
    elif d1 == Act.Actions.BUY_MONSTER:
        type = random.randint(0, 3)
        return Act.buy_monster(type)

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥50 永磁型步进电机PID算法
    • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
    • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
    • ¥15 如何处理复杂数据表格的除法运算
    • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
    • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
    • ¥200 uniapp长期运行卡死问题解决
    • ¥15 latex怎么处理论文引理引用参考文献
    • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
    • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?