【发布时间】:2019-04-24 17:44:01
【问题描述】:
假设我有以下列表:
possible_moves = [0, 1, 2, 3]
q_array = [4, 2, 3, 7, -10]
我想只为possible_moves 中索引处的元素获取q_array 中最小元素的索引。因此,这两个列表的输出应该是 1。
我使用以下代码实现了它,但它确实不是很 Pythonic。
best_value = q_array[random.choice(possible_moves)]
for move in possible_moves:
if q_array[move] <= best_value:
best_value = q_array[move]
move_chosen = move
return move_chosen
编辑:返回的值应该是最小值的索引,而不是值本身。在上面的示例中,返回 1 是因为它是索引在 possible_moves 的元素中的最小值的索引
【问题讨论】:
标签: python