(Python)元组/列表赋值

2024-06-25 23:36:10 发布

您现在位置:Python中文网/ 问答频道 /正文

当前要分配我的变量,我有这个:

rows = [[convert[random.randint(0,7)] for _ in range(5)] for _ in range(5)]
printedrows = [("[X]","[X]","[X]","[X]","[X]","  <- V: {}   TOTAL: {}".format(row.count(0), sum(row))) for row in rows]

这将创建5行随机值:

^{pr2}$

我想把“X”重新分配给数字,这样它的读数如下:

('[X]', '[2]', '[X]', '[X]', '[X]', '  <- V: 1   TOTAL: 9') 
('[1]', '[X]', '[3]', '[0]', '[1]', '  <- V: 2   TOTAL: 5') 
('[X]', '[X]', '[1]', '[X]', '[X]', '  <- V: 0   TOTAL: 6') 
('[1]', '[X]', '[X]', '[X]', '[2]', '  <- V: 1   TOTAL: 10') 
('[X]', '[3]', '[X]', '[2]', '[X]', '  <- V: 0   TOTAL: 8')

但是,当我使用这个时:(仅示例-位置由用户决定)

convert = {0:0,1:1,2:2,3:3,4:0,5:1,6:2,7:1}

printedrows[y][x] = rows[y][x]
TypeError: 'tuple' object does not support item assignment

我能做些什么来解决这个问题,这样我就可以在没有错误的情况下更改值了吗?谢谢。在


Tags: informatconvertforcountrange数字random
1条回答
网友
1楼 · 发布于 2024-06-25 23:36:10

您正在创建一个包含元组的列表:

printedrows = [("[X]","[X]","[X]","[X]","[X]","  <- V: {}   TOTAL: {}".format(row.count(0), sum(row))) 
               for row in rows]

您可以列出这些列表:

^{pr2}$

注意方括号与圆括号相反。在

相关问题 更多 >