Python:更改2D列表第一列中的随机元素

Python:更改2D列表第一列中的随机元素,python,list,random,Python,List,Random,我有一份清单: ls = [["a", "b"], ["c", "d"], ["e", "f"]] 我想把a、c或e改成1。我试过这个: import random for num, row in enumerate(ls): r = random.choice(num[0]) r[0] = 1 print(ls) 但我只得到: r

我有一份清单:

ls = [["a", "b"],
      ["c", "d"],
      ["e", "f"]]
我想把a、c或e改成1。我试过这个:

import random

for num, row in enumerate(ls):
    r = random.choice(num[0])
    r[0] = 1
print(ls)
但我只得到:

r = random.choice(num[0])
TypeError: 'int' object is not subscriptable

如何从2D数组的第一列更改随机元素?

选择从0到len(ls)-1的随机数,并更改行中的第一个元素:

随机导入
ls=[“a”、“b”]、[“c”、“d”]、[“e”、“f”]]
random_row=random.randint(0,len(ls)-1)
ls[random_row][0]=1
打印(ls)
打印(例如):

[[a',b'],
[1,'d'],
['e','f']]

num
这里是列表的索引(换句话说是一个整数)。因此,您不能使用
num[0]
num
是一个整数,也许您想尝试使用
row