Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Errore particolare

M
M.G (420 points)
5 7 12
in Es2 by (420 points)
closed by
Nell'Es2, nel mentre eseguo il program02, mi da errore TypeError: 'function' object is not subscriptable. Il problema reale è che si tratta di un errore che mi prende nel mezzo del program, per le migliaia. Il resto funziona perfettamente, cosa che lo rende ancora più strano, in quanto ciò dovrebbe accadere anche nelle altre linee di codice, cosa che invece non avviene. Mi da tale errore sul test 9 e 14.
999 views
closed with the note: answered

4 Answers

francesco.dev (33560 points)
22 51 129
by (33.6k points)

Ciao!

Questo accade chiaramente perché esistono due oggetti con lo stesso nome, ovvero esiste una lista con lo stesso nome della funzione!
Cambia i nomi e vedi che andrà tutto bene.

Ecco la mia fonte:
https://stackoverflow.com/questions/29101836/typeerror-function-object-is-not-subscriptable-python

Infine, se non è questo il problema, dimmelo subito che cerchiamo di risolvere.
Invece se te l'ho risolto, contrassegna la mia risposta come migliore!

A presto,
- Francesco Pio Scognamiglio

LeonardoEmili (35740 points)
14 65 155
by (35.7k points)
Quoto , mi hai "battuto" sul tempo ahahah
francesco.dev (33560 points)
22 51 129
by (33.6k points)
Hahahahha, anche la tua bella risposta! :)
M
M.G (420 points)
5 7 12
by (420 points)
Tecnicamente ho due funzioni che si ripetono in ogni blocco di codice al fine di ottenere i numeri in lettere, ma mi da questo errore solo con le migliaia. Io assegno a una variabile locale un funzione, ma l'errore si verifica solo nei casi sopraelencati. :(
francesco.dev (33560 points)
22 51 129
by (33.6k points)
Assegni ad una variabile locale una funzione? In che senso?
Vorresti dire che assegni ad una variabile locale ciò che ritorna tale funzione?
LeonardoEmili (35740 points)
14 65 155
by (35.7k points)

Ciao!

In genere questo errore capita quando ti riferisci in maniera scorretta a una funzione, nello specifico quando la tratti come se fosse una variabile. Ad esempio se provi a restituirti l'elemento a indice di della funzione modi() l'errore sarà di questo tipo.

Un facile trucco per trovare facilmente l'errore è quello di posizionare dei print strategici per capire se stai stampando una funzione oppure una variabile.

Consiglio: questo spesso capita perché ci si riferisce a variabili e a funzioni utilizzando lo stesso nome, quindi se questo è il tuo caso distinguili con nomi diversi.

.

Buona serata!

Leonardo Emili

M
M.G (420 points)
5 7 12
by (420 points)
C'è una variabile a cui assegno la funzione, per poi creare la stringa. Il problema è che se accade in quel caso, dovrebbe accadere negli altri, ma ciò non avviene, in quanto solo due test non me li supera, dandomi tale errore. http://q2a.di.uniroma1.it/qa-plugin/q2a-smilies/images/emoticon-00101-sadsmile.gif
LeonardoEmili (35740 points)
14 65 155
by (35.7k points)
Posso chiederti se la funzione e la variabile hanno lo stesso nome?
Stefaniscion (1370 points)
6 15 32
by (1.4k points)
Per caso hai due funzioni con lo stesso nome? Controlla
andrea.sterbini (207940 points)
756 1270 2377
by (208k points)
Forse ti sei dimenticato di mettere le parentesi degli argomenti alla chiamata della funzione?