Motivo 1: denominazione non valida di variabile in Python
Come accennato in precedenza, questo errore può essere causato quando l'utente nomina una variabile pari a una parola chiave riservata e utilizza anche quella parola chiave riservata all'interno dello stesso programma. Un esempio per dimostrare questo errore può essere ricreato utilizzando il seguente frammento di codice:
int = 5Quando esegui questo codice, produrrà:
In questo esempio, l'errore è causato perché il programma sta cercando di chiamare la variabile creata dall'utente "int" come funzione, che non è possibile.
Soluzione: fornire identificatori adeguati alle variabili
Per risolvere questo problema, l'utente può fornire un nome diverso alla variabile alla prima riga e il codice corretto per questo esempio è:
a = 5Quando questo codice viene eseguito ora, produrrà il seguente risultato sul terminale:
Come puoi vedere che il programma ha eseguito correttamente senza errori.
Motivo 2: chiamata errata al metodo del modulo importato
Questo errore si verifica anche quando l'utente non utilizza correttamente l'importazione del modulo durante l'accesso ai suoi metodi; Per dimostrarlo, prendi il seguente frammento di codice:
Società di importazioneIn questo frammento di codice:
Quando viene eseguito questo codice, produce il seguente risultato:
Vediamo come correggere questo errore.
Soluzione 1: utilizzare il nome del modulo con operatore DOT
Bene, questa soluzione è piuttosto semplice; Quando si chiama il metodo, utilizzare il nome del modulo e accedere al suo metodo dopo aver applicato l'operatore DOT, come: così:
Società di importazioneQuesta volta in cui viene eseguito il codice, produce il seguente risultato sul terminale:
Come puoi vedere, il programma è stato in grado di eseguire senza errori.
Soluzione 2: utilizzando l'approccio da import
Se non si desidera utilizzare nuovamente il nome del modulo durante tutto il programma, è possibile modificare il modo in cui stai importando il modulo nel programma; e invece di usare il "Modulo di importazione,"Puoi usare il"dall'importazione del modulo *". Ciò che fa è che aggiunge direttamente i metodi del modulo nel programma.
Con questa soluzione, il codice corretto è:
dall'importazione di socket *Questa volta quando viene eseguito questo codice, produrrà il seguente risultato:
L'output conferma che l'errore è stato evitato con successo.
Conclusione
L'errore Python "L'oggetto non è richiamabile" è spesso causato chiamando una variabile come funzione/modulo quando quella variabile sta solo memorizzando un valore semplice invece di essere un metodo. Inoltre, quando il nome della variabile è impostato come parola chiave riservata per il metodo integrato e il metodo integrato viene utilizzato anche all'interno dello stesso programma, provoca anche questo errore. Un ultimo motivo comune di questo errore è il modo errato di importare un modulo e chiamare il suo metodo, che è stato spiegato in questa guida.