Python入門講座条件式と分岐

比較以外の条件式

比較演算子文字列の比較if 文 による条件分岐else 節比較以外の条件式elif 節

条件式として使えるのは、<== などの比較演算子だけではありません。こんどは、比較演算子以外の条件を使って、if 文を書いてみましょう。

文字列の メソッド に、文字列がすべて数字かどうかを判定する isdecimal() があります。

isdecimal() は、文字列がすべて数字なら ブール型の値 True を、数字以外の文字なら False を返します。

In [21]:
print("123は数字ですか?", "123".isdecimal())
print("abcは数字ですか?", "abc".isdecimal())
123は数字ですか? True
abcは数字ですか? False

"123"という文字列はすべて数字ですので、"123".isdecimal() という式は、True となります。また、"abc"という文字列は数字ではありませんので、"abc".isdecimal() という式は、False となります。

この isdecimal() を条件式として、if 文を書いてみましょう。

  1. 文字列が数字なら「〇〇〇は数字です」と出力します。
  2. そうでなければ「〇〇〇は数字ではありません」と出力します。

判定する文字列は、input() 関数で取得します。

In [4]:
string = input("文字列を入力してください:")
if string.isdecimal():
    print(string, "は数字です")
else:
    print(string, "は数字ではありません")
123 は数字です

このプログラムは、次の処理を行っています。

1.input() 関数で文字列を入力し、変数 string に代入します。

  1. string.isdecimal() を条件式として、if 文を実行します。string.isdecimal()は、入力した文字列がすべて数字なら Trueに、そうでなければ False になります。

いろいろな数字や文字を入力して、結果を試してみてください。



【Copyright © 2001-2020 python.jp】 【Privacy Policy】 python_japan