3

私がやりたいことは、自分の辞書を調べて、一度に 2 つの値をペアで出力できるようにすることです。だから私が持っていたとしたら:

dict = {'player1':'Bob' , 'player2':'John', 'player3':'Greg', 'player4':'Tim'}

2重にせずに2つ1組に分けられるようにしてほしい。だから私は得ることができました

ボブとジョン、グレッグとティム または ボブとグレッグ、ジョンとティム。

うまく説明できなくて申し訳ありませんが、私の言いたいことを理解していただければ幸いです。

4

2 に答える 2

4
d = {'player1':'Bob' , 'player2':'John', 'player3':'Greg', 'player4':'Tim'}

players = list(d.values())
print(', '.join('{} and {}'.format(players[i], players[i+1]) for i in range(0, len(players), 2)))

プリント (例):

John and Greg, Bob and Tim

2行目を次のように置き換えることができます

players = sorted(d.values())

アルファベット順にソートされたプレーヤーのリストを取得します。それ以外の場合、順序は任意になります。

偶数のプレイヤーに対してのみ機能します。

于 2013-02-22T08:58:36.103 に答える
2
>>> import random
>>> D = {'player1':'Bob' , 'player2':'John', 'player3':'Greg', 'player4':'Tim'}
>>> players = D.values()
>>> random.shuffle(players)   # I'm guessing you don't want fixed pairs
>>> for i in zip(*[iter(players)]*2):
...  print i
... 
('Bob', 'Tim')
('Greg', 'John')
于 2013-02-22T08:57:55.017 に答える