• WebCampPro_インタビュー
    未経験31歳からエンジニア転職を実現【実際に聞いてみた】
    2017.04.01
  • WebCampPro_インタビュー
    自分で稼ぐ力をつけるため、新卒5年目の営業マンがエンジニアに転職!【WebCampPro転職者インタビュー】
    2018.02.02
  • WebCamp_インタビュー
    “未経験”でもたった1ヶ月で営業からエンジニアとして転職!『WebCamp』受講者インタビュー
    2017.10.04
  • WebCampPro_インタビュー
    未経験でも寿司職人からWebデザイナーになった!ホスピタリティでスクールを支える宮脇トレーナー
    2017.05.26
  • WebCampPro_インタビュー
    未経験から上京し、エンジニアとしてチームラボグループに転職!【WebCampPro卒業生インタビュー】
    2018.03.10
  • WebCamp_インタビュー
    時間や場所にとらわれず自由に働くために必要なスキルとは?【WebCamp卒業生インタビュー】
    2018.01.26
  • WebCamp_インタビュー
    【WebCamp受講生インタビュー】起業準備中にCEOが気がついたプログラミングスキルの重要性とは?
    2017.12.25
  • WebCamp_インタビュー
    「1カ月頑張ればこの先が見えてくる」地元メディアを立ち上げたママさん
    2017.07.20
  • WebCamp_インタビュー
    「自信の持てるスキルを得たい!」内定辞退した女子大生がプログラミングを学習したワケ。
    2018.04.28
  • WebCamp_インタビュー
    【卒業生インタビュー】台湾で月間100万UUの訪日旅行メディアを手掛けるCEOが、プログラミングを学んで得たものとは?
    2018.01.15
  • WebCamp_インタビュー
    【WebCamp卒業生インタビュー】1ヶ月でRubyをゼロから学び、Webエンジニアとして転職!
    2018.01.15

◆当サイトで人気のプログラミング教室のおすすめランキングはこちら!
プログラミングは独学では非効率で、時間を無駄にするリスクがあります。効率的なカリキュラムで学べるスクールを受講しましょう。

Web Camp【マンツーマンサポート】1ヶ月短期集中でプログラミングを学ぶスクール
1ヶ月通い放題・メンター常駐の教室環境でWebサービス等作りたい方
TechAcademyオンラインで開講しているプログラミングスクール
オンラインでどこでも学べる!/教室に行くのが忙しい人でも安心!
Tech Camp教養としてのITスキルを学べるスクール
Webデザイン/AI(人工知能)/IOS/Androidアプリ制作/VRを学びたい方!
WebCampPro転職保証付き!エンジニアとして転職したい人におすすめ!
未経験からプロのエンジニアを3ヶ月で目指すプログラミングスクールです。

11月11日、18日開催決定!2日間で人工知能(AI)を学習するPythonコースが開講

今回、当社(WebCamp)では、現役フリーランス・エンジニアとしてPythonの最前線で活動している講師をお招きし、2日間でPythonの基本から機械学習の基礎まで学ぶ短期集中型のコースを開講します。
Pythonの基礎プログラミング能力を身につけたい方機械学習やAIに興味はあるが学習できていない方現役Pythonエンジニアからリアルな話を聞きたい方
上記にあてはまる方は、ぜひご参加ください!


プログラミングの基本であり、要になるのが条件分岐などの制御処理になります。

当然ですが、Pythonにも条件分岐の制御処理があります。

今回は多くのプログラミング言語で基本であり、重要なif文について、詳しく解説していきます。

if文について

それではPythonのif文についてですが、まずは条件分岐の意味について簡単に説明しておきます。

条件分岐とは

例えば皆さんは、どのような時に傘を使いますか?

雨の時、日差しが強い時に使用します。

逆に雨が降っていない時や日差しが弱い日は傘を使いません。

この場合、傘を使うか使わないかの条件分岐は、天気になります。

Pythonのif文も上記の様に、条件に応じて行う処理を変えることが出来ます。

if文基本の記述方法

まずは1つの条件に合致した時のみに処理を行う基本的なif文の記述方法について、解説をしていきます。

if 条件式 :
    条件式を満たした時のみ実行する処理

Pythonのif文はcompound statementと呼ばれており、ブロックをインデント(空白を入れ、文頭を下げること)で表さなければいけない為、注意が必要です。

インデントはタブキーを1つ入力するか、半角スペース4つ入力しなければいけません。

if文基本の使用例

記述方法だけでは、具体的なイメージが付き辛い為、使用例についてもご紹介しておきます。


#if文の条件となる変数を定義

tmp = "雨"

#if文の条件式を定義

if tmp == "雨" :

#if文の条件式に合致した時のみ処理

    print("傘を使います")

実行結果

傘を使います

上記使用例では、最初の変数tmpに「雨」を代入してあります。

if文の条件式でtmpが雨と同じになっている為、Trueの処理が実行され「傘を使います」が出力されています。

if文で複数条件の指定について

もっとも基本となるif文については、上述で解説しましたが、実際にプログラミングをする場合は、複数条件で処理を変更する場合も少なくありません。

if文のブロックに対して1つの条件式だけではなく、複数の条件を指定することが可能です。

またどの条件にも合致しなかった場合に実行することも出来ます。

if文で複数条件を指定して処理を行う方法について、解説していきます。

if文で複数条件の記述方法

if文を使って複数条件で処理を変える基本的な記述方法は、下記になります。


if 条件式1:

    条件式1が満たされている場合の処理

elif 条件式2:

    条件式2が満たされている場合の処理

elif 条件式3:

    条件式3が満たされている場合の処理

else:

ifまたはelifのどの条件も満たさなかった場合の処理

elif部分は更に増やすことも減らす事も可能です。

ただし、elseよりも上で定義をしなければいけない為、複数条件を指定する場合は注意が必要です。

 

if文で複数条件の使用例

if文で複数条件の記述方法だけでは、イメージが付き辛い為、具体的な使用例についてもご紹介しておきます。


#条件判定に使用する為の変数

tmp = "晴れ"

#条件式を満たした場合に実行

if tmp == "雨":

    print("雨が降っている為、傘を使用します")

#if文の条件式2つ目

elif tmp == "雪":

#条件式3が満たされていれば、実行

    print("雪が降っている為、傘を使用します")

#上記条件を満たすことがない場合の処理

else:

    print("今日は晴れです")

#実行結果

今日は晴れです

tmpに「晴れ」が代入されている為、条件式1・条件式2ともに条件を満たしていない為、elseで定義されている「今日は晴れです」が実行結果として出力されています。

ただし、注意しなければいけないのが「晴れ」がtmpに代入されているから「今日は晴れです」と出力されているのではなく条件を満たしてないからだけだと言うことを忘れてはいけません。

例えばtmpに代入された値が「曇り」や極端な例ですが数値型の「1」でも出力される結果は同じになります。

またtmpに「雨」または「雪」が代入されていた場合は、それぞれの条件を満たした処理以降はif文のブロックから抜ける為、elseが実行されることはありません。

 

何もしない場合の使用例

if文複数の条件分岐の中で時には、特定の値の場合何もしない様にしたい場合があります。

何もしない場合はpassを使用します。

passの使用例は、下記になります。


#条件となる変数の準備

tmp = "何もしない"

#複数条件が設定されているif文

if tmp == "条件一致":

    print("条件一致")

#条件を満たすelif

elif tmp == "何もしない":

#何も処理をしない為、passを指定

    pass

else:

    print("該当条件なし")

上記を実行した場合、何も出力されず、if文による処理は実行されません。

結果からもお分かり頂けるように、条件式を満たすものがなければ、else節の「該当条件なし」が出力されますが、今回は、何も出力されないことからelif節の条件を満たしていることになります。

一行で記述する方法

複数条件のif文を一行で記述することが出来ます。

一行で記述する場合は、下記になります。


条件を満たしている場合の処理 if 条件式 else 該当条件がない場合の処理

複雑なif文を記述する場合は、見づらくなる為、おすすめしませんが、単純なif文による条件分岐の場合はシンプルでわかりやすく、おすすめです。

 

if notについて

条件分岐の制御を行う場合に、条件を満たしていなければ、実行したい場面も少なくありません。

そこで利用する条件式が「if not」です。

if not文の記述方法

if notの基本的な記述方法は、下記になります。


if not 条件式:

    条件を満たさない場合に処理

notを入れることで、条件式の判定が反転します。

プログラミング的な表現をすると条件式がTrueの場合、Falseになります。

逆に条件式がFalseの場合、Trueになります。

if not文の使用例

if notの具体的な使用例は、下記になります。


#if not 判定条件とする変数を準備

tmp = "晴れ"

#if not ので条件判定

if not tmp == "晴れ":

    print("今日は晴れではありません")

else

    print("今日は晴れです"):

#実行結果

今日は晴れです

通常のif文であれば、条件判定の1つ目でTrueになる為、「今日は晴れではありません」が出力されますが、if notの為、TrueがFalseになる為、else側の「今日は晴れです」が出力されていることが確認できます。

条件式の中で複数条件指定について

if文などの条件判定を行う場合、1つの条件式に対して複数の条件を指定したい場合があります。

ここまでのif文の書き方だけでも入れ子したりすれば、実装することは、不可能ではりませんが、非常に読みにくいプログラムになってしまい、あまりおすすめできません。

そこで分かりやすく、条件式に複数の条件を指定する方法について、解説していきます。

orを利用する記述方法

1つの条件式の中で複数の条件指定する方法の1つがorです。

orを使ったif文の記述方法は、下記になります。


#if文の条件式にorを使用する

if 条件式 or 条件式 or・・・・:

    条件式の内どれか1つまたは全てが条件を満たす場合に処理を行う

orは条件式のどれか1つでも条件を満たすことでTrueになり、処理を実行することが出来ます。

orを利用する使用例

orの具体的な使用例について、ご紹介します。


#条件判定に使用する変数を準備

tmp = "晴れ"

#if orを使用した使用例

if tmp == "曇り" or tmp == "晴れ":

    print("傘は必要ありません")

else:

    print("傘が必要です")

#実行結果

傘は必要ありません

実行結果からもわかるように、or条件で指定した1つの条件式を満たしている為、「傘は必要ありません」が出力されています。

andを利用する記述方法

andは複数条件を指定して全ての条件を満たしている場合のみTrueと判定して処理を行います。

if andの記述方法は、下記になります。

 if 条件式 and 条件式 and ・・・・: 全ての条件式を満たしている場合のみ処理を実行 

基本的な記述方法は、orと似ていますが、andの場合は条件を全て満たしていなければいけません。

andを利用する使用例

if文でandの使用例について、ご紹介します。

 #条件判定に使用する変数を準備

tmp = "晴れ"

#if andを使用した使用例

if tmp == "曇り" and tmp == "晴れ":

    print("傘は必要ありません")

else:
    print("傘が必要です")

#実行結果

傘が必要です

実行結果からわかるように、if文の最初の条件式で"晴れ"を満たしていますが、"曇り"ではない為、else節の「傘が必要です」が出力されています。

inを利用する記述方法

文字列を検索するinもif文と合わせて使用することが出来ます。

if文をinを使用した記述方法は、下記になります。


if 検索文字列 in 検索対象の文字列:

    検索文字列が含まれている場合処理を実行

inを利用する使用例

inを使ったif文の使用例についてご紹介します。


#検索するの文字列を準備

tmp = "abc"

#検索対象の文字列を準備

tmp2 = "abcdefg"

#if inの使用例

if tmp in tmp2:

    print("該当あり")

else:

    print("該当なし")

#実行結果

該当あり

tmp2の中にtmpの文字列が含まれている為、「該当あり」が出力されています。

if分のcontinueについて

continueはそれ以降の処理をスキップする機能です。

繰り返し処理で使用するforと合わせてよく使用され、if文と組み合わせて使用されることがあります。

if文のcontinueを利用する使用例

if文の記述の中で使用されるものではなく、continue自体の機能を使っている為、記述方法は割愛して具体的な使用例をご紹介します。


#for文で1から7までの数字を繰り返し処理する

for x in range(7):

#xが2の時だけ処理をスキップする
    if x == 2:
        continue

#xの値を出力する
    print(x)

#実行結果
1
3
4
5
6
7

実行結果から2の時だけ処理されていないことが、わかると思います。

これはcontinueによってxの値が2の時のみprint処理が行われていないからです。

まとめ

今回はPythonのif文について、解説してきましたが、いかがでしたか。

Pythonに限らずプログラミング言語を学習するうえでif文欠かせないものです。

基本的な記述方法を習得して、条件に応じて処理を変更できるプログラミングが出来るようになれば、プログラミングの幅が大きく広がります。

WebCamp・WebCamp Proについて

WebCampは1ヶ月でプログラミング・Webデザインスキルを学ぶ通い放題のプログラミングスクールです。WebCamp Proは3ヶ月間で未経験から即戦力エンジニアを育成するプログラミングスクールです。

2つのサービスを運営するインフラトップでは、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。

キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?

11月11日、18日開催決定!2日間で人工知能(AI)を学習するPythonコースが開講

今回、当社(WebCamp)では、現役フリーランス・エンジニアとしてPythonの最前線で活動している講師をお招きし、2日間でPythonの基本から機械学習の基礎まで学ぶ短期集中型のコースを開講します。
Pythonの基礎プログラミング能力を身につけたい方機械学習やAIに興味はあるが学習できていない方現役Pythonエンジニアからリアルな話を聞きたい方
上記にあてはまる方は、ぜひご参加ください!

11月枠も残りわずか当社人気の転職保証コース
プログラミング学習から転職成功まで導く、当社人気のWebCamp Proコース。
10月受入枠は満員となっております。11月枠に向け、お早めの申込みをオススメします。
プログラミング未経験でもエンジニア転職を絶対成功させたい
スキルを身に着けて人生を自ら切り開きたい
上記にあてはまる方は、ぜひご検討ください!

▼未経験から1ヶ月でWebデザイン・プログラミングを学びたい方はこちら!

▼ついに開講!オンラインでWebデザインを学びたい方はこちら!

関連キーワード
pythonの関連記事
  • 【python入門者必見!】print関数の基礎から徹底解説
  • 【python超入門】WebサイトでPython学習のすすめ
  • 【python入門者向け】おすすめPDF教材3選
  • 【python入門者向け】おすすめの学習方法
  • 【Python入門】MacでPythonをはじめるまで
  • 【python入門者必見!】1からわかるrange関数の徹底解説
おすすめの記事