Tôi có một chức năng mang lại kết quả khi tải xuống. Theo mục đích của câu hỏi này, cho phép nói tôi tạo ra một chích một lần thứ hai nhưng tôi muốn có một chức năng thuận tiện để quấn máy phát điện của tôi:Làm cách nào để mang lại kết quả từ hàm tạo bộ tạo Python lồng nhau?
import time
def GeneratorFunction(max_val):
for i in range(0,5):
time.sleep(1)
yield "String %d"%i
def SmallGenerator():
yield GeneratorFunction(3)
for s in SmallGenerator():
print s
... tại sao không mà chỉ in 5 chuỗi Tôi mong đợi? Thay vào đó nó xuất hiện để trả về trình tạo functio:
<generator object GeneratorFunction at 0x020649B8>
Làm cách nào để tạo chuỗi như một chức năng tạo bình thường?
FYI, bằng Python 3.3, 'năng suất từ GeneratorFunction (3)' sẽ làm việc .. – DSM
@DSM: Cảm ơn . Vẫn chưa thực hiện quá trình chuyển đổi sang 3+ ... –