Pythonのelifが最初よく理解できず、併せてfor文のネストも混乱したのでまとめておく。今回、if文を勉強するために参照した以下のサイトの図やコードを引用している。
What you will learn
Pythonのif文.
- if statements
- if...else statements
- if...elif...else statements
- nasted if statements
- nasted if statements with elfi (same sa switch statement)
Notice
- インデントが重要
- elfiが特殊
- Pythonにはdefaultではswitch-case文がないので、switch-case文などを書きたい場合にも活躍する
- True : non-zero or non-null
- False : zero or null
1. if statements
Synax
if test expression:
statement(s)
Flow Diagram
Example
var1 = 100 if var1: print("1-Got a true expression value") print(var1) var2 = 0 if var2: print("2-Got a ture expression value") print(var2) print("Good bye!")
Output
1-Got a true expression value 100 Good bye!
2. if...else statements
Synax
if test expression: Body of if else: Body of else
Flow Diagram
Example
var1 = 100 if var1: print("1-Got a true expression value") print(var1) else: print("1-Got a false expression value") print(var1) var2 = 0 if var2: print("2-Got a true expression value") print(var2) else: print("2-Got a false expression value") print(var2) print("Good bye!")
Output
1-Got a true expression value 100 2-Got a false expression value 0 Good bye!
3. if...elif...else statements
Synax
if test expression: Body of if elif test expression: Body of elif else: Body of else
Flow Diagram
Example
var = 100 if var == 200: print("1-Got a true expression value") print(var) elif var == 150: print("2-Got a true expression value") print(var) elif var == 100: print("3-Got a true expression value") print(var) else: print("4-Got a true expression value") print(var) print("Good bye!")
Output
3-Got a true expression value 100 Good bye!
4. nasted if statements
Synax
if test expression1: if test expression2: Body of if2 else: Body of els2 else: Body of else1
Flow Diagram
Example
var1 = 100 if var1 % 2 == 0: print("even number") if var1 % 5 == 0: print("multiple of five") else: print("not multiple of five") else: print("odd number")
Output
even number multiple of five
5. nasted if statements with elfi (same as switch statement)
Synax
if test expression: Body of if elif test expression1: Body of elif1 elif test expression2: Body of elif2 elif test expression3: Body of elif3 . . . else: Body of else
Flow Diagram
Example
var = 2 if var == 1: print("case1") elif var == 2: print("case2") elif var == 3: print("case3") elif var == 4: print("case4") else: print("default")
Output
case2
Javaのswitch-case文で書くと...
public class SwitchCaseExample2 { public static void main(String args[]){ int i=2; switch(i) { case 1: System.out.println("Case1 "); break; case 2: System.out.println("Case2 "); break; case 3: System.out.println("Case3 "); break; case 4: System.out.println("Case4 "); break; default: System.out.println("Default "); } } }
Output
case2