Qual è il modo più semplice per verificare se qualcosa è un elenco?Controlla se qualcosa è un elenco
Un metodo doSomething
ha i parametri a
e b
. Nel metodo, eseguirà un ciclo attraverso l'elenco a
e farà qualcosa. Mi piacerebbe un modo per assicurarmi che sia list
, prima di eseguire il ciclo, evitando così un errore o la sfortunata circostanza di passare una stringa e recuperare una lettera da ciascun ciclo.
Questa domanda deve essere stata posta prima - tuttavia i miei google mi hanno deluso. Saluti.
Penso che il "modo Python" sarebbe semplicemente permettere alle persone di passare qualsiasi cosa. Fidati dei programmatori che usano la tua funzione. –
"evitando così un errore" In che modo il controllo "evita" l'errore? È ancora sbagliato E se qualcuno usasse una tupla o un altro oggetto simile ad una lista che funzioni davvero correttamente? Perché impedir loro di usare una classe di cose simili alle liste che non hai pensato? In che modo questo "evita" l'errore? –
L'unica volta che controllo i tipi di argomenti è se voglio che la mia funzione faccia cose diverse per tipi diversi, per esempio interi o stringhe. Ma anche allora, di solito finisco per refactoring il codice e la rimozione dei controlli di tipo. Al giorno d'oggi, in realtà sono * più * probabile che scriverò codice che solleva "ValueError" o somesuch quando l'input è negativo. A differenza di C++, le eccezioni sono i tuoi amici. –