Pythonでは、assert
文を使用して変数の型を確認することができます。これは、関数の引数や返り値の型が期待通りであることを確認するために役立ちます。
以下に、Pythonで型をアサートする一般的な方法を示します。
def my_print(begin, text, end):
"""Print 'text' in UPPER between 'begin' and 'end' in lower"""
for i in (begin, text, end):
assert isinstance(i, str), "Input variables should be strings"
out = begin.lower() + text.upper() + end.lower()
print(out)
このコードでは、my_print
関数は3つの引数begin
、text
、end
を受け取り、それぞれが文字列であることをアサートしています。もし文字列でない場合、アサーションエラーが発生します。
ただし、Pythonの哲学に従うと、許可を求めるよりも謝罪をする方が簡単です。つまり、エラーが発生する可能性がある操作を試み、問題が発生した場合には例外を処理するという考え方です。これに基づいて、上記のコードは以下のように書き換えることができます。
def my_print(text, begin, end):
"""Print 'text' in UPPER between 'begin' and 'end' in lower"""
try:
print(begin.lower() + text.upper() + end.lower())
except (AttributeError, TypeError):
raise AssertionError('Input variables should be strings')
このコードでは、まずprint
文を試み、AttributeError
またはTypeError
が発生した場合にはアサーションエラーを発生させます。
以上が、Pythonで型をアサートする基本的な方法です。ただし、型チェックはコードのロジックを複雑にする可能性があるため、必要な場合にのみ使用することをお勧めします。