10

値に関係なく、辞書内のすべての値を整数 1 に置き換えることは可能ですか?

ありがとうございました!

4

4 に答える 4

22

確かに、あなたは次のようなことをすることができます:

d = {x: 1 for x in d}

これにより、 (古いdキー)のすべてのキーをにマップする新しい辞書が作成されます。d1

于 2012-10-18T18:08:05.140 に答える
16

(他の人が言ったように)辞書内包表記を使用して、古い辞書と同じキーを持つ新しい辞書を作成するか、すべてを適切に行う必要がある場合:

for k in d:
    d[k] = 1

ワンライナーが本当に好きなら、次を使用してその場で行うことができますupdate

d.update( (k,1) for k in d )
于 2012-10-18T18:17:26.953 に答える
0
a = {1:2, 2:2,3:2}
a = {x:1 for (x,_) in a.iteritems()}
print a

{1:1、2:1、3:1}

于 2012-10-18T18:08:34.173 に答える
-1

はい、可能です。辞書のすべてのキーを繰り返し処理し、関連する値を1に設定します。

于 2012-10-18T18:07:38.777 に答える