前提・実現したいこと
ここに質問の内容を詳しく書いてください。
Pythonのリストから整数型(int型)のみを取り出すプログラムを作りたいです。
しかし、自分の考えたコードではうまく動きませんでした。
解答のとおりに記述するとうまく動作しました。
なぜうまくいかないかご回答いただけますと幸いです。
よろしくお願いいたします。
発生している問題・エラーメッセージ
int型のみのリストを作成したいがfloat型の数字も入ってきてしまいます。
整数に絞り込んだリスト:[2, 4.0, 6, 8.0, 10]
該当のソースコード
python
1l = ['1', 2, '3', 4.0, '5', 6, '7', 8.0, '9', 10] 2 3for num in l: 4 if isinstance(num, int): 5 continue 6 else: 7 l.remove(num) 8print(f'整数に絞り込んだリスト:{l}')
ちなみに解答は以下となっています。
Python
1l = ['1', 2, '3', 4.0, '5', 6, '7', 8.0, '9', 10] 2l2 = [] 3for num in l: 4 if isinstance(num, int): 5 l2.append(num) 6print(f'整数に絞り込んだリスト:{l2}')
試したこと
逆に文字列だけのリストを作成しようとすると
ここにもfloat型の数字が入ってきており、混乱しています。
Python
1l = ['1', 2, '3', 4.0, '5', 6, '7', 8.0, '9', 10] 2 3for num in l: 4 if isinstance(num, int): 5 l.remove(num) 6print(f'整数に絞り込んだリスト:{l}')
補足情報(FW/ツールのバージョンなど)
Pythonのバージョンは3.6.5を使用しています。
回答1件
あなたの回答
tips
プレビュー