前提・実現したいこと
塾の課題で以下のような問題が出題されました。
「問題文」
内包表記とrangeを用いて、1から30までのリストnumを作成しなさい。内包表記で、リストnumの中から偶数を取り除き、かつ、10以下の奇数のみで構成されるリストkisuuを作成しなさい。
その後に、空のリストguusuuを作成しなさい。
その後に関数tuikaを宣言しなさい。引数をaとして、変数abcを宣言し、kisuu[a]に1を足して、奇数を偶数にし、returnでabcを返す。
その後、a=0を宣言し、while文でaが7よりも小さい間、guusuuのリストに関数tuikaから返ってきたものを入れていく。しかし、aが5になったらbreakで処理をやめる。
最後にリストkisuuとguusuuを表示しなさい。
発生している問題・エラーメッセージ
kisuuはちゃんと表示されているのに対して
guusuuは空のままである。
実行結果
[1,3,5,7,9]
[]
該当のソースコード
パイソン3
num=[x for x in range(1,31)] kisuu=[y for y in num if ((y<=10)and(y%2==1))] guusuu=[] def tuika(a): abc=kisuu[a]+1 return abc a=0 while a<7: guusuu = tuika() if a==5: break print(kisuu) print(guusuu)
試したこと
問題文の順序に沿って書いてみたのですが、何故かguusuuのリストだけずっと空のままです。
何がいけないのでしょうか?
補足情報(FW/ツールのバージョンなど)
paiza
回答1件
あなたの回答
tips
プレビュー