下記のプログラムにおいて、ifを用いて空白のリストが表示されないようにする方法がわかりません。
参考書の問題です。ご教授のほど宜しくお願いいたします。
python
1x = [1,2,3,4,5] 2for i in range(len(x)): 3 print(x) 4 x = x[:-2] 5
実行結果は下記です。
python
1[1, 2, 3, 4, 5] 2[1, 2, 3] 3[1] 4[] 5[]
ifは関数ではありません。
ifをまず自分で使ってみはしたのでしょうか?
文章を訂正いたしました。
試みたのですが、うまく記述できません。文章ではなんとなく推測がつくのですが、それを言語に落とし込むことができません。
①「もし」②「リストxが空なら」③「printを実行しない」と記述すればよいのではとは考えたのですが、②、③をどのように表せばよいのかがわかりません。
if構文の書式はわかりますか?
わかるならば、あとは、
> ②「リストxが空なら」
という条件を書くだけではないでしょうか。
となれば、あとは、pythonにおいて、リストが空かどうかを確認する方法を、調べればよいのではないでしょうか?
```python
x = [1,2,3,4,5]
for i in range(len(x)):
print(x)
x = x[:-2]
if x == []:
break
```
このように記述すると解決しました。ありがとうございます。追加で質問なのですが、breakを使わずに記述する方法はありますでしょうか。参考書には、習ったことだけで解けるとあるものの、breakは出てきていないのです。
その方法で解決されたのならば、siruku6さんの回答通りなので、
BA選出して、質問閉じられるとよいかと。
> breakを使わずに記述する方法はありますでしょうか
siruku6さんの回答に記載ありますので、
参考に、自身で組んでみてください。
> xの中身が空配列ならprint文を実行しない
がそれに該当する手法です。
かしこまりました。引き続き勉強していきたいと思います。ご教授いただきましてありがとうございます。またお願いいたします。
回答1件
あなたの回答
tips
プレビュー