我无法在python中排序。
这是我能得到的。根据分数排序。
[(('D', 'E'), 0.5), (('D', 'C'), 0.0), (('D', 'B'), 0.0), (('D', 'A'),0.0)]
第二步:这就是我想要的:
[(('D', 'E'), 0.5), (('D', 'A'), 0.0), (('D', 'B'), 0.0), (('D', 'C'),0.0)]
首先根据得分对输出进行排序,并根据元组中的第二个元素/节点对得分上的任何关系进行排序。
如何在不使用项目getter的情况下解决它?
for n in set(graph.nodes()) - set(graph.neighbors(node)):
neighbors2 = set(graph.neighbors(n))
if n != node:
#print (n, node)
scores.append(((node,n), 1. * len(neighbors & neighbors2) / len(neighbors | neighbors2)))
print (scores)
s = sorted(scores, key=lambda x: x[1], reverse=True) # sorted according to scores
d = sorted(s, key=lambda x: x[-1], reverse=True)