assert
アサート(関数とクラス)
意味 条件をテスト
assertとは?
assert文は、プログラムの特定の時点で条件が真であることを確認するために使います。もし条件が偽であった場合、プログラムはエラーを発生させ、処理を中断します。
assertの具体的な使い方
リストの要素数のチェック
def process_list(items):
assert len(items) > 0, 'リストが空です'
assert len(items) <= 5, 'リストの要素が多すぎます'
return sum(items) / len(items)
try:
result1 = process_list([1, 2, 3, 4])
print(f'平均値: {result1}')
result2 = process_list([])
except AssertionError as e:
print(f'エラー: {e}')
try:
result3 = process_list([1, 2, 3, 4, 5, 6])
except AssertionError as e:
print(f'エラー: {e}')
👇出力結果
平均値: 2.5
エラー: リストが空です
エラー: リストの要素が多すぎます
このコードでは、assertを使ってリストの要素数が0より大きく5以下であることを確認しています。条件を満たさない場合、AssertionErrorが発生し、指定したエラーメッセージが表示されます。
関数の戻り値の型チェック
def get_user_age():
# ユーザーの年齢を取得する処理(ここでは固定値を返す)
return 25
age = get_user_age()
assert isinstance(age, int), '年齢は整数でなければなりません'
assert 0 <= age <= 120, '年齢は0以上120以下でなければなりません'
print(f'ユーザーの年齢: {age}歳')
👇出力結果
ユーザーの年齢: 25歳
この例では、get_user_age関数の戻り値が整数であり、かつ現実的な範囲内(0〜120歳)であることを確認しています。これにより、予期せぬデータ型や不正な値を早期に検出できます。
assertに関するよくある質問
assertが学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Pythonのassertや__enter__、__next__、__iter__、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
Pythonを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!Pythonはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!