-2

SQLite のフィールドに顧客の予約 ID があるかどうかを確認しています。ある場合は、行などが返されます。しかし、そうでない場合は、次のエラーが発生します。

TypeError: 'NoneType' object has no attribute '__getitem__'

私はそれが何を意味するのか知っていますが、何もありません.しかし、エラーを防ぎ、代わりにそこにメッセージを入れる方法があるかどうか疑問に思っていますか?

4

3 に答える 3

1

エラーの処理方法を知っていれば、いつでもエラーをキャッチできます。

try:
   do_something_that_raises_error()
except TypeError:
   print("database doesn't have correct info")
   sys.exit(1)
于 2013-02-18T20:27:10.247 に答える
0

エラーをキャッチしたら、出力する代わりにカスタム エラーを発生させることもできます。

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)
于 2013-02-18T21:56:46.443 に答える
0

次のようなことをしているようです。

if row['customer_booking_id'] is not None:

あなたrowNoneそれ自体です。コードを投稿していただけますか?

于 2013-02-18T20:27:31.260 に答える