\

Pythonでは、ifelifelseというキーワードを使って条件分岐を行います。特にeliforを組み合わせた条件文は、初心者にとっては少し混乱を招くかもしれません。以下にその正しい使い方と注意点を説明します。

eliforの基本的な使い方

Pythonのelifは、前のif文の条件がFalseの場合に次の条件をチェックします。そして、その条件がTrueであれば、そのelifブロック内のコードが実行されます。

一方、orは2つの条件のうち少なくとも1つがTrueであれば全体の結果がTrueになる論理演算子です。

これらを組み合わせて、以下のようなコードを書くことができます。

today = 'Sunday'
if today=='Monday':
    print('Your weekend is over. Go to work.')
elif today=='Sunday' or today=='Saturday':
    print('Today is off.')
else:
    print('Go to work.')

このコードでは、today'Monday'であれば'Your weekend is over. Go to work.'を出力し、'Sunday'または'Saturday'であれば'Today is off.'を出力します。それ以外の場合は'Go to work.'を出力します。

注意点

しかし、orを使う際には注意が必要です。以下のようなコードを見てみましょう。

if a == 'hoge' or 'fuga':
    print('coffee')
else:
    print('tea')

このコードでは、aに何を代入しても'coffee'が出力され、else:は無視されます。これは、Pythonがorの左側と右側を個別に評価するためです。つまり、'fuga'は非空の文字列であるため、常にTrueと評価されます。

したがって、上記のコードは以下のように修正する必要があります。

if a == 'hoge' or a == 'fuga':
    print('coffee')
else:
    print('tea')

この修正により、a'hoge'または'fuga'である場合にのみ'coffee'が出力されます。

以上がPythonのeliforの基本的な使い方と注意点です。これらを理解することで、より複雑な条件分岐を効率的に書くことができます。Happy coding!

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です