Yanıtlar:
Python <= 2.5'te kullanın gen.next() . Bu, tüm Python 2.x sürümleri için çalışacak, ancak Python 3.x için geçerli olmayacaktır.
Python> = 2.6'da, şunu kullanın next(gen) . Bu yerleşik bir işlevdir ve daha nettir. Ayrıca Python 3'te de çalışacaktır.
Bunların her ikisi de, next()alt sınıflandırma ile geçersiz kılınabilen özel olarak adlandırılmış bir işlevi çağırır . Ancak Python 3'te bu işlev, __next__()diğer özel işlevlerle tutarlı olması için olarak yeniden adlandırılmıştır .
Bunu yapmanın doğru yolu budur.
Ayrıca kullanabilirsiniz next(gen).
Python 3 ve üzerinde bir jeneratör nesnesiyle ilişkili değeri elde etmek için kullanın next(<your generator object>). next () için sonraki çağrılar, kuyrukta birbirini izleyen nesne değerleri üretir.
Python 3'te sahip değilsiniz gen.next(), ancak yine de kullanabilirsiniz next(gen). Bana sorarsan biraz tuhaf ama öyle.
W1 = params.next()ama bir hata alAttributeError: 'generator' object has no attribute 'next'