Pythonでのif文の書き方

2019年11月11日

みなさまおはこんばんにちは、せなです

今回はPythonのif文の書き方について解説したいと思います

if文の基本的な書き方(if, elif, else)

ifの書き方

if文はほかのプログラミン言語のなかでも最もおなじみの文かと思います

if」は以下のように記述します

x = 0
if x == 0:
    print('x = 0')

----結果----
x = 0

elifの書き方

elif」は以下のように記述します

x = 1
if x == 0:
    print('x = 0')
elif x == 1:
    print('x = 1')

----結果----
x = 1

elif」はいくつでも記述することができます

elseの書き方

else」は以下のように記述します

x = 10
if x == 0:
    print('x = 0')
elif x == 1:
    print('x = 1')
else:
    print('None')
----結果----
None

else」は「elif」と違い一つしか記述できません

比較演算子の条件指定

比較演算子の一覧

比較演算子説明
x > yxがyより大きいならばTrue
x >= yxがyより大きいか等しいならばTrue
x < yxがyより小さいならばTrue
x <= yxがyより小さいか等しいならばTrue
x == yxがyと等しいならばTrue
x != yxとyが等しくなければTrue
x is yxとyのオブジェクトが同じであればTrue
x is not yxとyのオブジェクトが同じでなければTrue
x in yxがyに含まれるならばTrue
x not in yxがyに含まれないならばTrue

比較演算子の使い方(>, >=, <, <=, ==)

以下に一部の比較演算子の使用方法について記述します

def if_test(num):
    if num > 10:
        print('numは10より大きい')
    elif num >= 10:
        print('numは10以上')
    elif num < 5:
        print('numは5より小さい')
    elif num <= 5:
        print('numは5以下')
    elif num == 7:
        print('numは7と等しい')

----結果----
if_test(15)
→numは10より大きい

if_test(10)
→numは10以上

if_test(1)
→numは5より小さい

if_test(5)
→numは5以下

if_test(7)
→numは7と等しい

ほかにも、「x < y < z」のように連結して比較演算子を記述することもできます

num = 50
if 10 < num < 100:
    print('numは10から100の間')
else:
    print('numは10より小さいか100より大きい')

----結果----
numは10から100の間

オブジェクトの比較(is, is not)

is」や「is not」はオブジェクトの比較を行います

i = 10        #int型
f = 10.0      #float型
print(i == f)
print(i is f)

----結果----
print(i == f)
→True
print(i is f)
→False

特定要素の比較(in, not in)

「in」と「not in」はリストや文字列に特定の要素が含まれているかの比較を行います

str = 'grape'
list = ['apple', 'orange']
print('g' in str)              #'grape'に'g'が含まれるのでTrue
print('app' not in list[0])    #'apple'に'app'が含まれるのでFalse

----結果----
print('g' in str)
→True
print('app' not in list[0])
→False

論理演算子の条件指定

論理演算子の一覧

論理演算子は論理積(and)や論理和(or)、否定(not)のことです

論理演算子説明
x and yxとyがTrueであればTrue
x or yxとyのいずれかがTrueであればTrue
not xxがTrueならばFalse、xがFalseならばTrue

論理演算子の使い方(and, or, not)

x = True
y = True
z = False

print(x and y)  # TrueとFalse
print(x and z)  # TrueとFalse
print(x or y)  # TrueとTrue
print(x or z)  # TrueとFalse
print(not x)  # True
print(not z)  # False

----結果----
True
False
True
True
False
True