Exception שונים בכל route400, 404, 409, ו-422 ומתי כל אחד מתאיםtodos היא רשימה של dictionaries. כל פעולה על רשימה זו — חיפוש, מחיקה, עדכון — היא נקודת כשל פוטנציאלית שדורשת טיפול בשגיאות.
from flask import Flask, request, jsonify
app = Flask(__name__)
todos = []
next_id = 1
todos היא רשימה של dictionaries — לא dictionary — לכן אין גישה ישירה לפי מפתחnext_id הוא משתנה גלובלי שמבטיח שכל todo מקבל מזהה ייחודיבמקום לכתוב לולאת חיפוש בכל route, נרכז את הלוגיקה במקום אחד. אם הפריט לא נמצא — הפונקציה זורקת KeyError, והקורא מטפל בה.