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

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

新規登録して質問してみよう
ただいま回答率
85.41%
Pythonista

Pythonistaは、iOS上でPythonプログラミングができる開発アプリです。さらに、Pythonの関数・変数などを自動で補完する便利なコードエディタや、PythonスクリプトをiOS上で多様な形で機能させる各種機能も内包しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

486閲覧

python for関数について

Curry

総合スコア4

Pythonista

Pythonistaは、iOS上でPythonプログラミングができる開発アプリです。さらに、Pythonの関数・変数などを自動で補完する便利なコードエディタや、PythonスクリプトをiOS上で多様な形で機能させる各種機能も内包しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/12/06 06:36

前提

問題で for 関数が出て来ているのですが、初めて習った時、文の初めからfor を使っているイメージがありました。今回の問題では冒頭でinput()のあとに付けられており、疑問に思いました。そこに置くことでどのようにinput()に影響するのか教えて頂けると嬉しいです。

問題
長さ N の数列Aが与えられます。Aの中に 0 が含まれていない場合はYESを、 0 が含まれている場合はNOを出力してください。

### 該当のソースコード n = int(input()) a = [int(input()) for x in range(n)] flag = True for ele in a: if ele == 0: flag = False break if flag: print("YES") else: print("NO") ```ここに言語名を入力 ソースコード python ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。

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

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

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

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

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

TakaiY

2022/12/06 06:52

for文(forは関数ではありません)がどのような機能を持っているかはご存知ですか? また、提示のコードには「リスト内包表記」が出てきますが、これについては理解していますか?
guest

回答2

0

ベストアンサー

投稿されたソースコードでは、forループで内包表記と言われる構文が使用されています。
これは既存のリストから新規のリストを作成するための記法で、利用することにより簡潔にコードを記述することができます。

今回の場合、0からn-1までの既存リストに対し、[]内のint(input)で呼び出した新規リストを作成しています。
つまり、以下のコードと同等の動作をします。

n = int(input()) a = [] for x in range(n): ele = int(input()) a.append(ele)

如何でしょうか?

投稿2022/12/06 23:42

dtakkiy

総合スコア88

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

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

0

どのように動作しているのかわからなければ、逐一実行結果を出力してみて動作を追いかけてみてはどうでしょうか。

python

1n = int(input()) 2print("n: {}".format(n)) 3a = [int(input()) for x in range(n)] # ここにも for が含まれているのは気づいてますか? 4print("a: {}".format(a)) 5 6flag = True 7for ele in a: 8 print("ele: {}".format(ele)) 9 if ele == 0: 10 flag = False 11 break 12 13if flag: 14 print("YES") 15else: 16 print("NO")

実行例

3 n: 3 2 1 0 a: [object Object],[object Object],[object Object] ele: 2 ele: 1 ele: 0 NO

投稿2022/12/06 07:23

mather

総合スコア6753

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.41%

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

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

質問する

関連した質問