SQLite のフィールドに顧客の予約 ID があるかどうかを確認しています。ある場合は、行などが返されます。しかし、そうでない場合は、次のエラーが発生します。
TypeError: 'NoneType' object has no attribute '__getitem__'
私はそれが何を意味するのか知っていますが、何もありません.しかし、エラーを防ぎ、代わりにそこにメッセージを入れる方法があるかどうか疑問に思っていますか?
エラーの処理方法を知っていれば、いつでもエラーをキャッチできます。
try:
do_something_that_raises_error()
except TypeError:
print("database doesn't have correct info")
sys.exit(1)
エラーをキャッチしたら、出力する代わりにカスタム エラーを発生させることもできます。
try:
do_something_that_raises_error()
except TypeError:
raise MyCustomError("My Custom Message")
カスタム エラー定義の例を次に示します。
class MyCustomError(Exception):
def __init__(self, msg):
Exception.__init__(self,msg)
self.message = msg
def __str__(self):
return repr(self.message)
次のようなことをしているようです。
if row['customer_booking_id'] is not None:
あなたrow
はNone
それ自体です。コードを投稿していただけますか?