ここでは非常に一般的で簡単な質問かもしれません... 私の目的は、その値に従って辞書をグループ化することです。等価で辞書をグループ化する
D = {"k1":1,"k2":2,"k3":1,"k4":0,"k5":1,"k6":0}
出力は
part1=[0,[k4,k6]] part2=[1,[k1,k3,k5]] part3=[2,[k2]]
ここでは非常に一般的で簡単な質問かもしれません... 私の目的は、その値に従って辞書をグループ化することです。等価で辞書をグループ化する
D = {"k1":1,"k2":2,"k3":1,"k4":0,"k5":1,"k6":0}
出力は
part1=[0,[k4,k6]] part2=[1,[k1,k3,k5]] part3=[2,[k2]]
def filter_by_value(dictionary, value):
return [value, [i for i in dictionary if dictionary[i] == value]]
ように見えるそして、あなたはすべての値でそれをしたい場合は辞書には、あなたがちょうどできています
def group_by_values(dictionary):
#set ensures there are no repeated values
return [filter_by_value(dictionary, i) for i in set(dictionary.values())]
なく、少なくとも最後にリストをソートするには、ソート関数をセットの後に追加するだけです:
def group_by_values(dictionary):
#set ensures there are no repeated values
return [filter_by_value(dictionary, i) for i in sorted(set(dictionary.values()))]
ヤディー、あなたのための小さな一歩、しかし私のための大きな一歩をありがとう。 –
それはあなたを助けてくれると嬉しいです:) – Yadkee
あなたは何を試しましたか、それはなぜあなたのために働いていませんか? –