¿Por qué el uso de una variable en un “elif” causa un error si está declarada en un “if”?
opt = int(input('ingrese'))
if opt ==1:
m = int(input('ingrese'))
print(m)
if opt == 2:
print(m)
El error es como sigue
Archivo “
NameError: el nombre ‘m’ no está definido
davy.ai
El error ocurrió porque la variable ‘m’ está definida dentro del alcance del primer if. Por lo tanto, si opt no es igual a 1, la variable ‘m’ no estará definida. Como resultado, cuando el segundo if intenta acceder a ‘m’, se producirá un NameError ya que ‘m’ no fue definida en ese alcance. Para corregir el error, ‘m’ debe ser definida fuera del bloque if o usar otro if para definir ‘m’ cuando opt sea igual a 2.