blog

python3 basic 06 フロー制御ステートメント

インデントを示すために、スペースと"*"を使用することができますが、この 2 つを混在させることはできません。 elifとelseはどちらも省略可能で、elifは無限に、elseは最大でも1つです。 ...

Feb 28, 2020 · 3 min. read
シェア

より良い読書体験のために、ポークしてください:

目次

コード・ブロック入門
条件判定
条件判断1: if....elif....else
条件判断2: x if 条件 else y
 
循环1:while 
ループ2:for
ループの制御
break
continue
pass

Python コードブロックの紹介

  • Pythonは、コロン(colon)を使って、その後に続くものがコードのブロックであることを宣言します;
  • 同じコードブロック内ではインデントが同じで、インデントが同じでなくなったら、そのブロックが終了したことを意味します;
  • pythonには、if、for、class、defなど多くのコードブロック文があり、その直後に新しいコードブロックの開始を示すコロンが続きます;
a = 1
if a < 1:#コードのブロックを開始する
 print("It is small")#同じインデント量
 print("Go on")#同じインデント量
else:#別の新しいコード・ブロックを開始する。
 print("Well done")

お見事

  • コード・ブロック内にステートメントが1つしかない場合、ステートメントはコロンの後に置くことができます;
In [6]: if a==1:print("Well done")
Well done

空白と"◆"はインデントを示すために使用できますが、この2つを混在させることはできません。

条件判定

条件判断1: if....elif....else

elifとelseはどちらも省略可能で、elifは無限個、elseはせいぜい1個です。

#構文の構造
if condition11:
 do something
elif condition2:
 do something
elif condition3:
 do something
................
else:
 do something

# 例 1.

a = 1
if a < 1:
 print("Small")
elif a > 1:
 print("Big")
elif a > 2:
 print("Big again")
else:
 print("aa")

「aa

条件判断 2: x if 条件 else y

条件が成立すれば x を、そうでなければ y を返します。

a = 1
x = "apple" if a == 1 else "orange"
print(x)

アップル

ループ

pythonにはforループとwhileループがありますが、forループの方が効率が良いので、whileループを使う方が良いでしょう。

ループ 1: while

# 
while condition1:
 do sth
else:
 do sth

# 例2

x = 1
while x < 10:# 
 print(x)
 x+=1#xコードをより完全なものにするために、何もしない。

ループ 2: for

alist = list("haha")
for i in alist:
 print(i)

わら

ループの制御

通常、ループは条件が偽になるまでコードのブロックを繰り返し実行します。ループを途中で制御したい場合は、pass、break、continueなどを使います。

break

breakのレベルでループを直接終了。

for i in [1, 2, 3]:
 print(i)
 break#forループから抜け出す
 print("hah")#このステートメントは実行しない。

continue

ループの現在のラウンドのボディの残りのステートメントをスキップし、ループの次のラウンドに進みますが、ループは終了しません。

for i in [1, 2, 3]:
 if i == 2:
 continue#このループ本体内の後続のステートメントはスキップされる。
 print("hah")#ステートメントをスキップする
 else:#ループ本体を実行する。
 print(i)

pass

コードをより完全なものにするために、何もしないでください。

for letter in 'python':
 if letter == 'h':
 pass#この文は何もしない。
 print('これはpassブロックである。)
 print('現在の文字:%s'%letter)
現在の文字:p
現在の文字:y
現在の文字:t
これはpassブロックである。
現在の文字:h
現在の文字:o
現在の文字:n
Read next

this」に対するフロントエンドの包括的な攻撃について再認識する。

最近、私はフロントエンドを学び直すシリーズを書いています。\nフロントエンドのプロトタイプ/チェーンと継承の再確認。\nフロントエンドのクロージャとモジュール\n\nフロントエンドの実行メカニズム\nBFC、IFC、GFC、FFCとは?\n

Feb 28, 2020 · 22 min read