2015-12-16 12 views
9

Per qualche motivo che sto vedendo questo avvertimento nel PyCharm, sembra strano.

Previsto 'collections.Iterable', ha ottenuto 'range [int]' invece

Questa ispezione rileva il tipo di errori nelle espressioni chiamata di funzione. A causa della digitazione dinamica e della digitazione anatra, questo è possibile in un numero limitato di casi . I tipi di parametri delle funzioni possono essere specificati nelle docstring o nelle annotazioni delle funzioni di Python 3.

for _ in range(x): 

A me questo sembra letteralmente il più idiomatica for loop si può scrivere.

enter image description here

+0

Non riesco a credere che questo sia ancora un problema un anno dopo. – Roman

risposta

9

Dato il report, questo sembra essere un bug in PyCharm. Un oggetto intervallo è un iterabile e un Iterable. In 3.4.3:

Provare a segnalare il problema a PyCharm.

+2

Era già lì: https://youtrack.jetbrains.com/issue/PY-15038 sembra che richieda una configurazione specifica di mix di interpreti. Grazie. – jgritty