質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

1882閲覧

if文を出力したらelse文を出力しないようにしたい

退会済みユーザー

退会済みユーザー

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2020/03/22 02:43

前提・実現したいこと

標準入力するもの
3 #以下に入力する数
11
22
33

入力された文字列のうち1が含む数字だけを出力したい。#11
(該当するものが1つもなかった場合には『×』を出力したい)

発生している問題・エラーメッセージ

else文まで出力してしまうので、出力しないようにしたい。
出力:
11
×

該当のソースコード

Python3

1a = int(input()) 2b = [list(map(int, input().split())) for _ in range(a)] 3 4for i in range(len(b)): 5 if '1' in str(b[i]): 6 print(*b[i]) 7 else: 8 print('×') 9 break

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2020/03/22 02:58

ifの条件が偽なら、else部分を実行するのが if/elseの文法です。 期待する出力結果はどういうものでしょうか?
退会済みユーザー

退会済みユーザー

2020/03/22 03:29

文法がわかるように頑張ります ありがとうございました!
otn

2020/03/22 03:57

> 期待する出力結果はどういうものでしょうか? 質問にも答えましょう。
guest

回答2

0

次のような方法なら、比較的綺麗に書けます。

Python

1n = int(input()) 2src = [input() for _ in range(n)] # 文字列のままで良いですよね 3 4dst = [] 5for e in src: 6 if '1' in e: 7 dst.append(e) 8 9if dst: 10 for e in dst: 11 print(e) 12else: 13 print('x')

おまけ

もう少し簡潔に書くとこんな感じです。やっていることは同じです。

Python

1dst = [ 2 e for e in src if '1' in e 3] 4 5if dst: 6 print(*dst, sep='\n') 7else: 8 print('x')

ここまでやるのはやり過ぎかもしれません。

Python

1dst = [ 2 e for e in src if '1' in e 3] or ['x'] 4 5print(*dst, sep='\n')

投稿2020/03/22 09:52

LouiS0616

総合スコア35668

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

1を含む文字列があったかどうかを変数に保持しておいて、その結果によって処理を変えると良さそうです。

python

1a = int(input()) 2b = [list(map(int, input().split())) for _ in range(a)] 3counter = 0 4 5for i in range(len(b)): 6 if '1' in str(b[i]): 7 counter = counter + 1 8 print(*b[i]) 9 10if counter == 0: 11 print('×')

投稿2020/03/22 03:04

編集2020/03/22 03:10
siruku6

総合スコア1382

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/03/22 03:30

解決できました ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問