Skip to content

Pythonにおけるif、if-else、ネストした文のマスター

Updated on

Pythonは、効率的な意思決定プログラムを作成することができる、さまざまな制御構造を備えた多目的なプログラミング言語です。 Pythonにおける最も基本的な制御構造の1つは、 if 文です。 このチュートリアルでは、Python ifif-else、およびネストされた if 文の構文と使用法について、具体的な例を用いて紹介し、意思決定およびフロー制御のスキルを向上させます。

条件文に入る前に、Pythonの基本をよく理解してください。 Pythonのデータ構造については、 Pandas DataFrameチュートリアルを参照してください。

Python Pandas DataFrameから素早くデータ視覚化を作成したいですか?

PyGWalker は、Visualizationを伴うExploratory Data AnalysisのためのPythonライブラリです。 PyGWalker (opens in a new tab)は、pandas dataframe(およびpolar dataframe)をTableauスタイルのユーザーインターフェースに変換して、データ分析およびデータ視覚化のワークフローを簡素化できます。

PyGWalker for Data visualization (opens in a new tab)

Python if文

Python if 文の構文は簡単です。

if condition:
    # condition が True の場合に実行するコード

conditionTrue または False に評価される真偽値式です。 条件が True である場合、if ブロック内のコードが実行されます。 例:

age = 18
if age >= 18:
    print("投票資格があります。")

Python if-else文

Pythonのif-else文を使用すると、条件が True の場合は1つのコードブロックを実行し、条件が False の場合は別のコードブロックを実行できます。if-else文の構文は次のとおりです。

if condition:
    # condition が True の場合に実行するコード
else:
    # condition が False の場合に実行するコード

例:

age = 17
if age >= 18:
    print("投票資格があります。")
else:
    print("投票資格がありません。")

Python if-elif-else文

Pythonのif-elif-else文を使用すると、複数の条件をテストして、いずれかの条件が True の場合に特定のコードブロックを実行できます。 if-elif-else 文の構文は以下の通りです。

if condition1:
    # condition1 が True の場合に実行するコード
elif condition2:
    # condition2 が True の場合に実行するコード
else:
    # 条件がいずれも True でない場合に実行するコード

例:

score = 85
 
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
else:
    grade = "C"
 
print(f"あなたの成績は{grade}です。")

ネストしたif文

Pythonでは、ネストされた if 文を他の if 文の中に入れ子にすることができます。 これは、複数の条件を順番にテストする必要がある場合に便利です。 ネストされた if 文の構文は次のとおりです。

if condition1:
    # condition1 が True の場合に実行するコード
    if condition2:
        # condition1 および condition2 が True の場合に実行するコード

例:

age = 35
country = "USA"
 
if age >= 18:
    if country == "USA":
        print("USAで投票資格があります。")

Python if、if-else、およびネストされたif文の例

構文と使用法について説明したので、Pythonのifif-else、そしてネストされたif文について解説していきましょう。

Pythonの文字列を使ったIf文

Pythonのif文は、以下の例のように文字列と一緒に使うこともできます。

username = "Alice"
 
if username == "Alice":
    print("Welcome, Alice!")

Pythonの複数条件を組み合わせたIf文

論理演算子であるandornotを使って、より複雑な条件式を作成することもできます。以下に例を示します。

PythonのAnd演算子を使ったIf文

age = 25
country = "USA"
 
if age >= 18 and country == "USA":
    print("You are eligible to vote in the USA.")

PythonのOr演算子を使ったIf文

age = 16
parent_permission = True
 
if age >= 18 or parent_permission:
    print("You can attend the event.")

PythonのNot演算子を使ったIf文

user_is_admin = False
 
if not user_is_admin:
    print("You do not have admin privileges.")

Pythonの複数条件を組み合わせたIf-Else文

複数条件をif-else文で使うこともできます。以下はその例です。

temperature = 75
is_raining = False
 
if temperature >= 70 and not is_raining:
    print("It's a perfect day for a picnic!")
else:
    print("Not the best day for a picnic.")

Pythonの複数条件を組み合わせたIf-Elif-Else文

複数条件をif-elif-else文で使うことで、より複雑なプログラムを作成することができます。以下に例を示します。

weather = "sunny"
temperature = 75
 
if weather == "sunny" and temperature >= 70:
    print("It's a perfect day for a picnic!")
elif weather == "cloudy" and temperature >= 70:
    print("It might be a good day for a picnic, but watch out for rain.")
else:
    print("Not the best day for a picnic.")

PythonのネストされたIf文の例

ネストされたif文を使うことで、より複雑なプログラムを作成することができます。以下に例を示します。

age = 35
country = "USA"
is_registered_voter = True
 
if age >= 18:
    if country == "USA":
        if is_registered_voter:
            print("You are eligible to vote in the USA.")
        else:
            print("You need to register to vote in the USA.")
    else:
        print("You cannot vote in the USA.")

まとめ

このチュートリアルでは、Pythonのifif-else、そしてネストされたif文の構文と使い方について、様々な例を紹介しました。これらの概念を理解することは、効率的なPythonプログラムを作成するために重要です。

Pythonの知識をさらに深めたい場合は、以下のチュートリアルが役立つかもしれません。

Pythonの条件文とフロー制御を習得することで、より効率的かつ柔軟なプログラムを作成することができます。これらのスキルを、NumPy、Pandas、Seaborn、MatplotlibなどのPythonライブラリなど、他の強力なPythonライブラリと組み合わせることで、幅広いプログラミング課題に取り組むことができます。

Python学習の旅を続けるにあたって、練習を重ねることが非常に重要です。このチュートリアルで説明した概念をプロジェクトに取り込んで、様々なシナリオで使ってみてください。Pythonの制御構造と意思決定プロセスをより深く理解することができ、より熟練したPythonプログラマーになれます。