我有这本字典:
d= {'1': { '2': 1, '3': 0, '4': 0, '5': 1, '6': 29 }
,'2': {'1': 13, '3': 1, '4': 0, '5': 21, '6': 0 }
,'3': {'1': 0, '2': 0, '4': 1, '5': 0, '6': 1 }
,'4': {'1': 1, '2': 17, '3': 1, '5': 2, '6': 0 }
,'5': {'1': 39, '2': 1, '3': 0, '4': 0, '6': 14 }
,'6': {'1': 0, '2': 0, '3': 43, '4': 1, '5': 0 }
}
Run Code Online (Sandbox Code Playgroud)
我想写一个函数返回所有值<2(小于2)的列.
到目前为止,我已将字典转换为列表,然后尝试了许多不起作用的事情......我知道答案是第4列.
这是我的最新尝试:
def findFirstRead(overlaps):
e= [[d[str(i)].get(str(j), '-') for j in range(1, 7)] for i in range(1, 7)]
nested_list = e
for i in map(itemgetter(x),nested_list):
if i<2:
return x+1
else:
continue
Run Code Online (Sandbox Code Playgroud)
......这是非常错误的
以下set和list comprehension列出了列的最大值为2的列:
columns = {c for r, row in d.iteritems() for c in row}
[c for c in columns if max(v.get(c, -1) for v in d.itervalues()) < 2]
Run Code Online (Sandbox Code Playgroud)
这回来了['4']
.
归档时间: |
|
查看次数: |
48 次 |
最近记录: |