https://llego.dev/posts/best-practices-error-handling-file-input-output-python/