當前位置: 首頁>>代碼示例>>Python>>正文


Python Snake.gather_food方法代碼示例

本文整理匯總了Python中snake.Snake.gather_food方法的典型用法代碼示例。如果您正苦於以下問題:Python Snake.gather_food方法的具體用法?Python Snake.gather_food怎麽用?Python Snake.gather_food使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在snake.Snake的用法示例。


在下文中一共展示了Snake.gather_food方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: move

# 需要導入模塊: from snake import Snake [as 別名]
# 或者: from snake.Snake import gather_food [as 別名]
def move():
    data = bottle.request.json
    #print "Received move ..." #request:{}".format(data)
    
    my_id = data["you"]
    board_width = data['width']
    board_height = data['height']
    snakes = data["snakes"]
    snake = "yo"
    for snake in snakes:
        if snake["id"] == my_id:
            our_snake = snake

    me = Snake(my_id, board_height, board_width)

    #print "Created snake with id = ", my_id 

    #blockades =  map(lambda x: extend_head(x,me), data["snakes"])
    blockades = []
    for snake in data["snakes"]:
        temp = extend_head(snake, me)
        print "Snake coords: {}".format(temp)
        blockades.extend(temp)

    print "No go before: {}".format(blockades)
    #blockades = blockades[0]
    print "No go areas: {}".format(blockades)
    
    #TODO limit based to first N food or based on threshold
    food = map(tuple, data["food"])
    #print "Food @ {}".format(food)
    #food.sort(lambda xy: abs(xy[0] - me.head[0]) + abs(xy[1] - me.head[1])) 
    food.sort(key=lambda xy: abs(xy[0] - me.head[0]) + abs(xy[1] - me.head[1])) 
    food = food[:3]
    #print "Food @ {}".format(food)

    
    move = me.gather_food(food, blockades)

    return {
        'move': move, #random.choice(directions),
        'taunt': random.choice(taunts)
    }
開發者ID:tristanp2,項目名稱:OldBattlesnake,代碼行數:45,代碼來源:main.py


注:本文中的snake.Snake.gather_food方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。