Questo codice di seguito funziona correttamente:Misunderstood pitone resa
def file_gen(f_name):
f = open(f_name)
for line in f:
yield line
gen_line = file_gen("foo.html")
gen_line.next() # '<!DOCTYPE>\n'
gen_line.next() # '<html> \n'
gen_line.next() # ... next line in file
Ma questa funzione solleva StopIteration
. Non capisco perché?
def file_gen(f_name):
f = open(f_name)
line = f.readline()
yield line
gen_line = file_gen('foo.html')
gen_line.next() # '<!DOCTYPE>\n'
gen_line.next() # StopIteration
Cosa ti aspetti che accada? – delnan
Il secondo è in realtà un errore di sintassi in Python (non è possibile rientrare nella riga 'yield') – 6502
@ 6502 scusa, ho corretto –