HOWTO · Python

Usa la parola chiave del in Python

La parola chiave del viene utilizzata per eliminare gli oggetti. Poiché tutto in Python è un oggetto, la parola chiave del può essere utilizzata per eliminare tutto in Python.

In questa pagina

In questo tutorial, discuteremo dell’uso dell’istruzione del in Python.

L’istruzione del viene utilizzata per eliminare gli oggetti. A causa della natura orientata agli oggetti di Python, tutto ciò che può contenere dati è un oggetto. Quindi, l’istruzione del può essere utilizzata per eliminare variabili, oggetti classe, liste, ecc.

La sintassi dell’istruzione del è

del object_name

Funziona rimuovendo object_name sia dallo spazio dei nomi locale che da quello globale.

Elimina le variabili con l’istruzione del in Python

variable = "This is a variable"
print(variable)
del variable
print(variable)

Produzione:

This is a variable
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-1-f9a4f1b9bb9c> in <module>()
      2 print(variable)
      3 del variable
----> 4 print(variable)

NameError: name 'variable' is not defined

Il programma sopra ha mostrato il valore di variable e poi ci ha dato NameError. Questo perché variable è stata rimossa dallo spazio dei nomi dopo aver usato l’istruzione del.

Elimina liste con l’istruzione del in Python

List = ["One", "Two", "Three"]
print(List)
del List
print(List)

Produzione:

['One', 'Two', 'Three']
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-2-edd546e00a8e> in <module>()
      2 print(List)
      3 del List
----> 4 print(List)

NameError: name 'List' is not defined

Simile all’esempio precedente, il nome List è stato rimosso dallo spazio dei nomi.

Possiamo anche suddividere una lista usando l’istruzione del.

List = ["One", "Two", "Three"]
print(List)
del List[1]
print(List)

Produzione:

['One', 'Two', 'Three']
['One', 'Three']

Elimina l’elemento della lista con l’indice come 1.

Elimina l’elemento del dizionario con l’istruzione del in Python

dictionary = {"key1": "value1", "key2": "value2", "key3": "value3"}
print(dictionary)
del dictionary["key2"]
print(dictionary)

Produzione:

{'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
{'key1': 'value1', 'key3': 'value3'}

Elimina oggetti di classe definiti dall’utente con l’istruzione del in Python

class MyClass:
    def myFunction(self):
        print("Hello")


class1 = MyClass()
class1.myFunction()
del class1
class1.myFunction()

Produzione:

Hello
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-23-26401eda690e> in <module>()
      6 class1.myFunction()
      7 del class1
----> 8 class1.myFunction()

NameError: name 'class1' is not defined