Pythonでは、変数が特定の型であるかどうかを確認するためにisinstance()
関数を使用します。特に、変数が文字列であるかどうかを確認する場合、以下のように使用します。
if isinstance(s, str):
print("s is a string")
else:
print("s is not a string")
ここで、s
は型を確認したい変数です。isinstance()
関数は、第一引数のオブジェクトが、第二引数のクラスまたはそのサブクラスのインスタンスである場合にTrue
を返します。
Python 2では、文字列型にはstr
とunicode
の2つの型がありました。これらのいずれかであるかを確認するためには、basestring
という抽象スーパークラスを使用します。
if isinstance(s, basestring):
print("s is a string")
else:
print("s is not a string")
しかし、Python 3ではunicode
型が廃止され、str
型のみが文字列型として存在します。そのため、Python 3では以下のようにstr
型を直接使用します。
if isinstance(s, str):
print("s is a string")
else:
print("s is not a string")
以上がPythonで文字列の型判定を行う基本的な方法です。適切な型判定を行うことで、エラーを防ぎ、コードの安全性を高めることができます。