WeSeong ログイン
← 記事一覧に戻る
プログラミング言語

Python の条件文とループ

Python の条件文とループ

Pythonの勉強を続け、条件文やループに進むと、さまざまなゲームを作れるのが楽しかったです。

ゲームは似たようなものだったが、今回はコードを書くだけでなくアルゴリズムについて考えることができたのが特に嬉しかったです!😌


Ⅰ. 概要

Python条件文を理解するには 順次構造、選択的構造、反復構造順次構造について知っておく必要があります。 'それは上から下へと流れるように、連続的に流れていきます。そして、選択構造は分岐点を分割します '特定の条件が満たされたときには、流れ方が変わる」繰り返し構造とは、最初から最後まで、または中間の過程を経て特定のアクションを繰り返す構造です。 もし、もし ~ else, if ~ elif ~ else, ネストされた ifあります。ループとは、特定の部分を一定回数繰り返すステートメントです。 for および while、ネスト for/while 構造を利用してください。


条件文とループについての詳細は、次のサイトを参照してください。

4. より多くの制御フローツール



Ⅱ. Python の条件文

条件付きステートメントを理解するには、順序構造、選択構造、繰り返し構造について理解する必要があります。 順次構造は 順次Sequential)英語の単語の意味は、韓国語の辞書で定義されているとおりです

手順に従ってください。

出典: 標準韓国語辞典

各ステップが順番に実行される構造です。 これは最も単純な構造ですが、最もよく使用されています。上から下へと流れる滝をイメージするとわかりやすいでしょう。実生活の例として、夜遅くに家で行うこと、例えばシャワーを浴びる、日記を書く、洗濯をする、掃除をするなどを考えてみてください。


選択構造両方の場合において 一つが選択され、その方向にプロセスが進みます。そういった意味です。ハイキング中に、どの道を選ぶか迷ったときを考えてみるとわかりやすいでしょう。 再帰構造特定のステップです 複数回実行してくださいまた、繰り返しの構造でもあり、私はいつも自宅で就寝前にYouTubeを見ます。


コーディングに関しては 条件文は重要であり、理解し、習得する必要があります。広く使用されており、条件文を使用してさまざまな操作構造プログラムを作成することができます。条件文は、過去に英語を学ぶ際にも多く使用されていました。 家庭法考えるのは良いことです。選択構造を持つ交差点で選択をする前に '特定の条件が生じた場合、私はこの道を選択します。これは「もしこれがあれば、それからこうなる」という文言に従って機能します。つまり、これは条件付きの文言であり、実際の例では、友人とどのカフェに行くかを選択する際の条件として、場所が広々であることやコーヒーがおいしいことなどが挙げられます。


Python の最も単純な条件文は、単独で使用される if です。

score = 100

if score > 90 :
    print("A학점입니다.")

上の例のように、if文は単独で使用され、条件はifと':' (コロン)の間に記述されます。if文内のコードは、条件が一致した場合 (true) だけ実行されます。


次は、if ~ else文です。

score = 80

if score > 90 :
    print("A학점입니다.")
else :
    print("F학점입니다.")

一見すると、else文だけが追加されたように見えますが、実際には、if条件が満たされない(true ではない)ときに、else文内のコードが実行されます。今まで学んだことを踏まえて、ヒントとしては、


※以下で説明するように、if ~ else の構文を使用する際には慎重に考える必要があります。if ステートメントの条件が明確でない場合、else ステートメントが実行され、プログラムが予期せぬ動作をすることがあります。


第三項は、if ~ elif ~ elseです。

score = 60

if score > 90 :
    print("A학점입니다.")
elif score > 80 :
    print("B학점입니다.")
else :
    print("F학점입니다.")

他の言語とは異なり Pythonは switch ~ case 文法誰もいない。 switch ~ case 文法を簡単に説明すると switch 次に、一致する条件に従って条件が評価されます case(場合に備えて)特定のアクションを識別し、その後にそのアクションを実行します。詳細については、を参照してください。 Java, C 私は、語学を学びながら勉強することをおすすめします。


elif文は、if文とelse文の間に追加されます。elif条件は、if条件がfalseのときに真か偽かを比較します。elif条件がtrueの場合は、その文のコードが実行され、falseの場合はelse文のコードが実行されます。条件をさらに詳細に分割するには、複数のelif文を記述できます。


最後のものは、ネストされた構文です。

price = 1000

if price > 100 :
    if price > 500 :
        print("가격이 500원 이상입니다.")

if文には、別のif文が含まれています。これは、if文内だけでなく、if ~ else、if ~ elif ~ else などの文内で、別の if、if ~ else、または if ~ elif ~ else 文を記述できる場合にもあります。上の例では、1,000ウォンの価格のデータがあります。このデータは、100ウォン以上という条件を満たしており、500ウォン以上という別の条件にも該当します。この条件も満たされているため、出力文が実行され、「価格は500ウォン以上です」というメッセージが表示されます。


※ もう一つのヒントです!!

Python条件付きステートメントを記述する場合 インデントインデントは重要です。後ほど、ループ、関数、およびクラスにおいて、インデントは通常、4つのスペースの形式で行われます。 他の言語では、条件は「()」の括弧で区切かれ、実行されるコードは「{}」のブレースで区切かれます。しかし PythonPythonでは、インデントを使用して条件と実行コードを区切きます。この慣習に従わないとエラーが発生しますので、必ず従ってください。


実践で条件文を練習しているとき、私はミッションを受け、コードを自分で作成し、書き込みました。みんながそれぞれ違う方法でコードを書きましたが、正解はひとつしかありません。なので、私が掲載したコードは参考にするのに適しています。検索すると、同じ問題について異なる人が書いた解答を見つけることができます。なので、それらを参考にするのもいいでしょう。コードが長くて最初は不思議に思える場合でも、正常に動作すればそれは成功したことです。なので、条件文を完全にマスターした後はアルゴリズムについて考えるのがいいです!


課題: 入力されたスコアを受け取り、90点以上の場合はA、80点以上の場合はB、70点以上の場合はC、60点以上の場合はD、それ以外の場合はFと出力するプログラムを実装しましょう!(注:下に著者によるコードが記載されていますので、まずは問題を解いてみることをおすすめします。)






















score = int(input("점수를 입력해주세요 : "))

if score >= 90 :
	print("A", end="")
else :
	if score >= 80 :
		print("B", end="")
	else :
		if score >= 70 :
			print("C", end="")
		else :
			if score >= 60 :
				print("D", end="")
			else :
				print("F", end="")

print("학점입니다.")


Ⅲ. Python のループ

ループは、特定のステップを繰り返すために使用されます 複数回繰り返されるプロセスコーディングの観点から言うと、コードの特定の部分を何回繰り返すかを指定し、繰り返し実行することを意味します。これを使用する理由は、不要な繰り返しコードを削減できるため、数百行のコードをわずか数行で記述できることです。


Pythonループを使用するには、for 文と while 文を理解する必要があります。for 文 'for 変数 in range(開始値、終了値 + 1、増分値): 'それを以下の形式で記述してください

for i in range(1, 11, 1) :
    print(i, "", end="")

출력 결과 => 1 2 3 4 5 6 7 8 9 10

rangeは Pythonこれは、内部関数によって指定された範囲の値を返すことを意味します。for文で使用すると、 range最初の可変引数はカウントを開始する場所を指定できます。1の場合、1から開始し、何も入力しなくてもデフォルトで何も省略できます。 0 から始まります。 第二の変数は「終値 + 1」と説明されていますが、とても単純です。 何回か繰り返します考え方は簡単です。開始値を指定しない場合、デフォルトで0から始まります。終了値+1が10である場合、10回繰り返します。しかし、10回繰り返す場合は、0から9までです。上記の例では、1から10まで10回繰り返します。数値が10のとき、なぜ11になるのでしょうか?それは、デフォルトの開始値0ではなく1から始まるためです。つまり、10まで出力するために11になります。最後に、開始値から始まる増分値が変数になります。 どれくらいの増加増加するか減少するかを決めます。値が 1 の場合は 1 を加算し、2 の場合は 2 を加算します。上の例では、増加値が 2 に変わった場合、出力は '1 3 5 7 9' となります。


※ for ステートメントは、if ステートメントと同様に、for ステートメント内にネストできます。これは while ステートメントでも同様であり、while for や for while など、他のループもネストできます。


※ Python の for ステートメントは、Java や Javascript などの他の言語の foreach ステートメントと似ています。大きな違いは、Java では for ステートメントを実行すると、変数 i の値を -1 に設定したり、i-- を実行したりすることができ、これにより最初の値に戻したり、一歩前の値に戻すことができます。しかし、Python の for ステートメントではこれはできません。


while文では、ループを終了する条件を指定するか、値を真に設定して無限ループするという二通りの方法があります。無限ループではプログラムは終了しませんので、プログラムを終了させるにはbreakを使用します。breakは、if文と組み合わせて、特定の条件が満たされたときにループを中断することができます。

count = 0

while True :
    count += 1
    
    if count == 10 :
        break

while count < 10 :
    count += 1

10回繰り返すwhileループの例を書きました。 while True このステートメントは無限ループなので、if ステートメントと同等です。 breakを通じて 最初のループは特定のポイントで終了し、二つ目のループはwhile文の後に、条件が指定されたポイントで終了します。ここで重要なのは、条件が真ならループが続き、偽ならループが終了するということです。このことを考慮して、条件を慎重に設定することが重要です。最初はこの機能がわかりにくく、ループが終わらないことがよくありましたが、コードを繰り返し書いていくうちに、理解できるようになりますよ!


※ for 文と while 文で使用できる宣言 breakそしてもう一つは continue 一文の文があります。 continueループを終了します break違っています continue 以下のコードスニペットは省略され、ループは再開されます。たとえば、1 から 100 までの偶数を省略して出力することができます。


私が自分で行ったミッションについて話す前に、役に立つかもしれないヒントをいくつかお伝えしたいと思います。


※ 医師コード: プログラムコードに似た形式ですが、韓国語または英語で記述されています '医師のコード (pseudocode, 修道法則)医師コードは直接機能しませんが、 プログラムのアルゴリズムフローを理解するこのセクションは、フォローするのに良い例です。要件やチェックの必要な部分を章に分け、コードが何をするのかを韓国語で記述するだけです。これは、Pythonだけでなく他の言語でのコーディングにも役立ちますので、実践してみると良いでしょう。


ミッション: 乗算表を印刷することでループを練習しましょう!

* 出力方法はさまざまですので、最適だと思われる方法で出力してください。
























# 예시 1
for i in range(2, 10, 3) :
	for j in range(1, 10) :
		if (i+2) < 10 :
			print(i, "X", j, "=", i*j, "\t", (i+1), "X", j, "=", (i+1)*j, "\t", (i+2), "X", j, "=", (i+2)*j)
		else :
			print(i, "X", j, "=", i*j, "\t", (i+1), "X", j, "=", (i+1)*j)
	print()

# 예시 2
for i in range(2, 10, 1) :
    for j in range(1, 10, 1) :
        print(i, "X", j, "=", i*j)
    print()


レビュー

今日は条件文とループについて学びました。最初の一時間は退屈な概念ばかりだったのですが、今回は実践的な内容で楽しかったです。コーディングを学ぶ楽しさは、学んだ内容でミッションを作り、自分のプログラムやロジックを作ることです。これからはリスト、メソッド、クラスについて学び、より多様なミッションやロジックを作れるようになりたいです。🥰