der*_*zer 5 list count python-2.7
我的代码目前写成:
convert = {0:0,1:1,2:2,3:3,4:0,5:1,6:2,7:1}
rows = [[convert[random.randint(0,7)] for _ in range(5)] for _ in range(5)]
numgood = 25 - rows.count(0)
print numgood
>> 25
Run Code Online (Sandbox Code Playgroud)
它总是以 25 的形式出现,所以不仅仅是行不包含 0。
你打印了rows吗?
它是[[0, 1, 0, 0, 2], [1, 2, 0, 1, 2], [3, 1, 1, 1, 1], [1, 0, 0, 1, 0], [0, 3, 2, 0, 1]],所以你有一个嵌套列表。
如果您想计算0这些嵌套列表中's的数量,您可以尝试:
import random
convert = {0:0, 1:1, 2:2, 3:3, 4:0, 5:1, 6:2, 7:1}
rows = [[convert[random.randint(0, 7)] for _ in range(5)] for _ in range(5)]
numgood = 25 - sum(e.count(0) for e in rows)
print numgood
Run Code Online (Sandbox Code Playgroud)
输出:
18
Run Code Online (Sandbox Code Playgroud)