やりたい事
リスト内に11個の要素があったとして
繰り返し処理を使い
3個ずつランダムに要素を取り出し
リストに「リストとして」追加し
最後に余った要素の個数を表示させたいです
やったこと、調べた事
まず自分なりにコードを書いてみました。
python
1import random 2 3li1 = list(range(1, 12)) 4li2 = [] 5 6def function(): 7 li2.append(random.sample(li1, 3)) 8 li2.append(random.sample(li1, 3)) 9 li2.append(random.sample(li1, 3)) 10 print(li2) 11 print(str(len(li1)) + "個余りました!") 12 13function() 14# [[1, 10, 4], [10, 3, 2], [11, 6, 1]] 15# 11個余りました!
これでli2での得たい実行結果は得られたのですが
残りの要素の個数を表示させられず。
python 繰り返し
python 繰り返し リスト 取り出す
で調べてみて
コードを書いてみようと思ったのですが
なかなか上手くいかず
なんとなくですが日本語で
骨組みを考えてみました
関数名 もしli1内の個数が3つ以上なら li1からランダムで3つずつ取り出しli2に追加(ここでグルグル回して) もしli1内の個数が3未満なら 完成したli2のリストを表示 li1に残った要素の個数の表示
またなんとなくですが
下のようにコードを書いてみました。
python
1import random 2 3li1 = list(range(1, 12)) 4li2 = [] 5def function(): 6 while len(li1) >= 3: 7 li2.append(random.sample(li1, 3)) 8 9 else: 10 print(li2) 11 print(str(len(li1)) + "個余りました!") 12 13function()
これだと、得たい実行結果は得られませんでした。
そもそも、骨組みがあってるか心配だったので
こちらで質問させていただきました。
完全に丸投げ質問なのは重々承知してます、、、
なにかヒントでも教えて頂けると幸いです。
よろしくお願い致します。
ーー追記ーー
皆様ご回答ありがとうございます。
細かく改善するべき点に気が付く事ができました。
皆様のご回答をもとにコーディングしていきたいと思います。
本当にありがとうございます。
回答5件
あなたの回答
tips
プレビュー