実現したいこと
popitem()を使ってランダムに選ばれた辞書データ(Key,Value)を削除してそのデータを取得したい。
他のrandom()などを使えば実装可能だと思いますがドキュメント通りにいかないので腑に落ちません。
何か基本的なことを見落としてるのかもしれないのでご教示頂ければと思います。
発生している問題
ループさせて複数回削除すると毎回同じ順序で削除される。
[Python Documentation 3.6.5]旧リンクでは任意の (key, value) 対を辞書から消去して返します。
とあります。
↓
ブラウザのお気に入りから古いドキュメントのリンクを見ていました。大変失礼しました。
↓ New!!
Python Documentation 3.7.0
該当のソースコード
Python3
1#Python3.7.0 2d = {} 3for i in range(5): 4 d[i]=775 +i 5 6for i in range(len(d)): 7 pop_data = d.popitem()#ランダムになっていない?? 8 print(str(pop_data) + " ",end="")
#出力結果 (4, 779) (3, 778) (2, 777) (1, 776) (0, 775) ```### 試したこと サンプルデータの作り直しなどしてみましたが、どのデータでも最後に追加したものから削除されてるようです。 ### 補足情報(バージョンなど) Python3.7.0 学習初めて間もないのでせっかくなので最新にしてみました。 verの違いなど関係あるのでしょうか??
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/18 07:41