English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La funzione iter() di Python restituisce un iteratore per l'oggetto fornito.
La funzione iter() di Python crea un oggetto che può iterare un elemento alla volta.
Quando combinato conciclo for,whilee cicli similicicloQuesti oggetti sono molto utili quando sono vincolati.
La sintassi della funzione iter() è:
iter(object, sentinel)
La funzione iter() ha due parametri:
oggetto-Oggetto che deve creare un iteratore (può essereinsieme,tuplee simili)
sentinel (opzionale) -Valore speciale utilizzato per rappresentare la fine della sequenza
La funzione iter() restituisce un oggetto iteratore per l'oggetto fornito.
Se l'oggetto definito dall'utente non implementa __iter__(), __next__() o __getitem__(), viene sollevata un'eccezione TypeError.
Se viene fornito anche il parametro sentinel, iter() restituirà un iteratore fino a quando non viene trovato il carattere di marca.
# lista delle vocali lista di vocali vowels = ['a', 'e', 'i', 'o', 'u'] vowels_iter = iter(vowels) print(next(vowels_iter)) # 'a' print(next(vowels_iter)) # 'e' print(next(vowels_iter)) # 'i' print(next(vowels_iter)) # 'o' print(next(vowels_iter)) # 'u'
Risultato di output
a e i o u
class PrintNumber: def __init__(self, max): self.max = max def __iter__(self): self.num = 0 return self def __next__(self): if(self.num >= self.max): raise StopIteration self.num += 1 return self.num print_num = PrintNumber(3) print_num_iter = iter(print_num) print(next(print_num_iter)) # 1 print(next(print_num_iter)) # 2 print(next(print_num_iter)) # 3 # Lancia StopIteration print(next(print_num_iter))
Risultato di output
1 2 3 StopIteration
with open('mydata.txt') as fp: for line in iter(fp.readline, ''): processLine(line)
Quando si esegue il programma, viene aperto in modalità di letturamydata.txtFile.
Poi, la chiamata iter(fp.readline, '') nel ciclo for legge ogni riga del file di testo fino a raggiungere il carattere di marcatura '' (stringa vuota).
Leggi di più:Iteratore Python, funzioni native di Python