Pythonで文字列が数値であるかをチェックする方法
Pythonで文字列が数値かどうかを確認する方法
以下はPythonで文字列が数値かどうかを確認する手順のチュートリアルです:
まず、
is_numericという名前の関数を定義します。この関数は文字列を受け取り、その文字列が数値かどうかを確認し、対応するブール値(TrueまたはFalse)を返します。is_numeric関数の内部で、tryとexcept文を使用して、文字列を数値型に変換しようとする際に発生する可能性のあるエラーを処理します。tryブロックの内部で、floatまたはintという組み込み関数を使用して、文字列を浮動小数点数または整数に変換しようとします。変換が成功した場合は、それは文字列が数値であることを意味するので、Trueを返します。変換中に例外が発生した場合(たとえば、
ValueError)、それは文字列が数値ではないことを意味するので、exceptブロックで例外をキャッチし、Falseを返します。
以下に、is_numeric関数の例の実装を示します:
def is_numeric(string):
try:
float(string)
return True
except ValueError:
return False
この関数を使用して、文字列が数値であるかどうかを確認するには、関数を呼び出して文字列を引数として渡すことができます。例えば:
print(is_numeric("123")) # 出力: True
print(is_numeric("-45.67")) # 出力: True
print(is_numeric("3.14abc")) # 出力: False
print(is_numeric("xyz")) # 出力: False
最初の2つの例では、文字列は数値であり、関数はTrueを返します。最後の2つの例では、文字列は数値ではなく、関数はFalseを返します。
この実装は整数と浮動小数点数の両方に対して機能します。整数のみをチェックしたい場合は、関数を変更してfloatの代わりにint関数を使用することができます。