如何从二维数组中随机选择一个元素然后添加到它?
amount_to_add = 13
my_array = [[0,0],[0,0],[0,0]]
我想将 13 随机添加到其中一个元素,所以它看起来像
my_array = [[0,0],[0,13],[0,0],[0,0]]
如何从二维数组中随机选择一个元素然后添加到它?
amount_to_add = 13
my_array = [[0,0],[0,0],[0,0]]
我想将 13 随机添加到其中一个元素,所以它看起来像
my_array = [[0,0],[0,13],[0,0],[0,0]]
import random
my_array[random.randrange(len(my_array))].append(amount_to_add)
就这么简单。
演示:
>>> my_array = [[0],[0],[0],[0]]
>>> my_array[random.randrange(len(my_array))].append(amount_to_add)
>>> my_array[random.randrange(len(my_array))].append(amount_to_add)
>>> my_array
[[0], [0], [0, 10], [0, 10]]
编辑:原来我误解了这个问题。添加方法如下:
>>> my_array = [[0,0],[0,0],[0,0],[0,0]]
>>> random.choice(my_array)[random.randrange(len(choice))] += amount_to_add
>>> my_array
[[0, 10], [0, 0], [0, 0], [0, 0]]
>>> random.choice(my_array)[random.randrange(len(choice))] += amount_to_add
>>> my_array
[[0, 10], [0, 0], [0, 0], [0, 10]]
这有效:
>>> from random import choice, randint
>>> amount_to_add = 13
>>> my_array = [[0,0],[0,0],[0,0]]
>>> element = choice(my_array)
>>> element[randint(0, len(element)-1)] += amount_to_add
>>> my_array
[[13, 0], [0, 0], [0, 0]]
>>> my_array = [[0,0],[0,0],[0,0]]
>>> element = choice(my_array)
>>> [randint(0, len(element)-1)] += amount_to_add
>>> my_array
[[0, 0], [0, 0], [0, 13]]
>>>
它在 中随机选择一个元素my_array
,在该元素上随机选择一个索引,然后添加amount_to_add
到该索引处的项目。