MENU
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
カテゴリー
  • IT関連 (623)
    • Bootstrap (2)
    • クラウド (4)
    • サーバー技術 (185)
    • ストレージ (7)
      • NetApp (7)
    • ネットワーク技術 (91)
      • Cisco (36)
      • Juniper (18)
      • 負荷分散装置 (17)
    • パソコン関連 (92)
      • MAC (25)
      • Windows (54)
    • プログラミング (154)
      • Ansible (11)
      • C言語 (23)
      • Python (111)
        • Django (20)
    • 仮想化 (88)
      • Docker (63)
      • VMware (23)
  • VPS (200)
    • ABLENET VPS (16)
    • Amazon Lightsail(VPS) (2)
    • ConoHaVPS (37)
    • mixhostVPS (4)
    • WebARENAIndigo (16)
    • XServerVPS (34)
    • お名前.com VPS (12)
    • さくらのVPS (24)
    • カゴヤクラウドVPS (13)
    • シンVPS (7)
  • レンタルサーバー (56)
    • エックスサーバー (38)
  • 光回線 (8)
  • 技術スキルアップ開発・学習 (7)
    • Envader (2)
    • RareTECH (2)
    • Udemy (3)
もう現役20年超えましたー。経験値ならだれにも負けないエンジニア技術ブログ
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
  1. ホーム
  2. IT関連
  3. プログラミング
  4. Python
  5. 【Python】条件分岐「if文」の動作と使い方

【Python】条件分岐「if文」の動作と使い方

2020 5/29
Python
2019年12月14日2020年5月29日

for文と同じくプログラムを作成するに当たり、条件によって処理を変えていく際に使用するのが「条件分岐」です。

以下ではPythonで条件分岐を表現する場合に使用する「if文」についての動作と使い方をまとめます。

for文についてはこちらを参照

あわせて読みたい
【Python】繰り返し処理「for文」の動作と使い方 Pythonのプログラミングの中で、同じことを繰り返す処理があります。 以下ではfor文を使った繰り返し処理について説明します。 【Python】プログラミングの繰り返し処理...

目次
安くて高速!高性能VPSで快適開発!
最速5分でサーバー構築
>>>こちらをチェック

エンジニア必見! 技術力を伸ばすVPS徹底比較
>>>VPS比較

【Python】条件分岐「if文」の動作と使い方まとめ

そもそも条件分岐はどういうものかというと、条件分岐とは「条件によって処理を変える」ことを意味します。

たとえば、テレビを購入する場合、予算が20万円とします。
購入したいと考えているテレビが30万、次の購入候補となるテレビが18万だとすると、後者になります。

この場合だと、予算の20万が条件となり、評価した結果によって購入する対象のテレビが変わります。
これが条件分岐です。

if文を使った条件分岐の処理

Pythonでは条件分岐をする場合「if文」を利用します。

この「if文」の使い方ですが、ifの後ろに半角スペースを一つ空け条件となる式を書きます。
インデントされている行が分岐後の処理となります。

以下のように、左から、「ifキーワード」、「式」を下記、最後に「:」コロンでif文の構文を作成します。

if test_point >= 90:
    実行したい処理

また、ふくすの条件で分岐させたい時は「elif」、「else」を使用します。
それ俺の利用用途は以下となります。

  • elif :条件を付け加える時に使用
  • else :「if」や「elif」でつけた条件のどれにも当てはまらない時の処理
if test_point >= 90:
    実行したい処理①
elif test_point >= 75:
    実行したい処理②
else:
    上記の条件どれにも当てはまらないときの処理

また、if文の処理は、上から順番に処理されます。
どれか一つの条件に当て嵌まった時点でそのブロック内の処理が実行され、どれにも当てはまらない場合、elseの処理をします。

「if文」の式と比較演算子の書き方

「if文」では、算数などで使用する不等式と似たものを使用します。
以下の式の例で言うと、test_pointの変数の値は90よりも大きいまたは等しいかと言う条件となります。

※test_pointが90以上か?

if test_point >= 90:
    print('Pass!')

このように値を比較するための記号のことを、「比較演算子」と言います。

また、比較演算子は数値以外の比較も可能です。
例えば以下では、name変数の値は’ヒロミチ’と言う名前を一致しているかと言う条件となります。

※nameが「ヒロミチ」と一致するか?

if name == 'ヒロミチ':
    print('あなたの名前が一致しました。')

比較演算子はよく使うので以下で一覧にまとめました。

比較演算子一覧
演算子 意味
> 〜より大きい
> 〜より小さい
>= 以上
<= 以下
== 等しい
!= 等しくない

複数条件による「if文」の書き方

if文では複数条件を組み合わせた式を作ることができます。
2つ以上の条件に当てはまる式を作成したい場合は、「and」条件を使用します。

以下では、ポイントが90点以上で、nameが「ヒロミチ」の場合に実行される条件となります。

if test_point >= 90 and name == 'ヒロミチ':
    print('Pass!')

また、複数条件のうち、どれかの条件に当てはまればいい場合は「or」条件を使用します。

if name == 'ヒロミチ' or name == 'コウキ':
    print('あなたの名前がメンバーに一致しました。')

「if文」を使用した、テストの結果から評価を出力するプログラム

ここでは、if文を使った応用のプログラムを作ります。
よく使われるプログラムで、テストの結果プログラムを作成します。

以下では、それぞれの点数をみて、「good」、「pass」、「fail」で評価するプログラムとなります。
まずは、ファイルを作成し、テスト用の結果データを準備します。

今回は複数の入力ができるように、split()メソッドを利用して、リスト化をします
split()メソッドについては以下の記事を参考にしてください。

あわせて読みたい
【Python】split()メソッドで文字列を分割する動作と書き方 input()ではキーボードから入力した数値、文字列を取得できました。 これを複数入力ができるようにすることもできます。 split()メソッドを使用することにより、複...

また、len()関数により、「point_list」の値の個数を取得します。
これにより、リストにいくつの値が入力されたかを出力し、「good」と「success」で割合の計算をします。

例)
score * 100 * 0.9

↓ 30, 50, 90 と3つの値を入力した場合

3 * 100 * 0.9

次に評価するための条件を以下で書いていきます。
条件分岐は以下となります。

  • 合計点が9割以上 → 「good」
  • 合計点が7割以上 → 「success」
  • それ以外(以下) → 「fail」

最後にprint()関数で結果を表示します。

test_point = input('点数をカンマ区切りで入力: ')
point_list = test_point.split(',')
total = 0

for point in point_list:
    total += int(point)

score = len(point_list)
good = score * 100 * 0.9
success = score * 100 * 0.7
if total >= good:
    evaluation = 'good'
elif total >= success:
    evaluation = 'sccess'
else:
    evaluation = 'fail'

print('点数の評価は{}です。'.format(evaluation))

出力結果

$ python3 if_test.py 
点数をカンマ区切りで入力: 50,50,60
点数の評価はfailです。

$ python3 if_test.py 
点数をカンマ区切りで入力: 90,90,90
点数の評価はgoodです。

$ python3 if_test.py 
点数をカンマ区切りで入力: 80,80,80
点数の評価はsccessです。

if文による条件分岐は、これからも必ず使っていく重要なプログラムの考え方となります。
ここはしっかりと勉強して、覚えておくようにしましょう。

エンジニアスキルをアップする勉強法

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

あわせて読みたい
現役エンジニアがおすすめするVPSレンタルサーバ比較(高速SSD限定) 格安VPS比較(2025年最新版)

Python
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする コメントをキャンセル

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)



検索
カテゴリー
新着記事
  • XServerVPS アニメ風 男の子 プログラミングをしている VPSを利用している 楽しそうにしている
    XServerVPSで証明書(SSL)を取得する方法
    2025年3月24日
    XServerVPS
  • レンタルサーバ アニメ風 女の子 楽しんでパソコンをしている 目がキラキラ
    WordPressがレンタルサーバよりVPSで利用する方がおすすめの理由
    2025年3月19日
    VPS
  • VPS レンタルサーバー アニメ風 女の子 プログラミングをしている VPSを利用している 楽しそうにしている
    VPSとクラウドの違いとは?初心者向けにわかりやすく解説
    2025年3月5日
    VPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSはWindows serverを利用できない。その理由と利用できるOSは?
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSでゲームを利用する環境はあるのか
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSのサイトの表示速度は他社に比べて早いのか?
    2025年3月4日
    シンVPS
目次
目次