Solución:
Probablemente desee establecerlo en Ninguno.
variable = None
Compruebe si la variable está “definida”
is_defined = variable is not None
Podría eliminar la variable, pero en realidad no es pitónica.
variable = 1
del variable
try:
print(variable)
except (NameError, AttributeError):
# AttributeError if you are using "del obj.variable" and "print(obj.variable)"
print('variable does not exist')
Tener que detectar un NameError no es muy convencional, por lo que generalmente se prefiere establecer la variable en None.
Puede eliminar un nombre global x
utilizando
del x
Python no tiene “variables” en el sentido que tienen C o Java. En Python, una variable es solo una etiqueta que puede aplicar a cualquier objeto, a diferencia de un nombre que refrenda alguna ubicación de memoria fija.
Eliminar no elimina necesariamente el objeto al que apunta el nombre.
Si desea poder probar su ‘estado indefinido’, debe establecerlo en Ninguno:
variable = None
y prueba con
if variable is None:
Si quieres limpiar cosas, puedes borrarlas, del variable
pero eso debería ser tarea del recolector de basura.