Puedes manejar ciertos errores que pueden ocurrir cuando se está programando.

La estructura para el manejo de errores consta de la palabra reservada tryexcept, y finally (opcional).

try: #Intenta ejecutar este código
	n1 = input('Ingresa el número 1')
	n2 = input('Ingresa el número 2')
	suma = int(n1) + int(n2)
	print(suma)
except: #Si encuentra un error se captura aquí
	print('Ha ocurrido un error')
finally: #Instrucción ejecutada al finalizar el programa
	print('Ejecución finalizada')

Tipos de errores:

Se asignan de la siguiente manera:

try:
	print(numero)
except: NameError
	print('No se ha encontrado la variable')
finally:
	print('Programa finalizado')

Guardar errores dentro de variables

Para guardar un error, debes agregar la palabra reservada 'as' después del except y el nombre de la variable que almacenará el tipo de error.

try:
	print(numero)
except: NameError as error: #El error se almacena en la variable error
	print('El error es: ' + str(error)) #La variable se debe convertir a tipo string