cuốn sách gpt4 ai đã làm

python - 深入——yield from inside yield

In lại Tác giả: Walker 123 更新时间:2023-11-28 20:28:34 26 4
mua khóa gpt4 Nike

是否有一个单行代码来获取生成器并生成该生成器中的所有元素?例如:

def Yearly(year):
yield YEARLY_HEADER
for month in range(1, 13):
# How can I rewrite the following two lines?
for line in Monthly(month):
yield line
yield YEARLY_FOOTER

def Monthly(month):
yield MONTHLY_HEADER
for day in range(31): # Yes, this is wrong
yield 'Day %d' % day
yield MONTHLY_FOOTER

也许有更好的方法来重写整个方法?

câu trả lời hay nhất

import itertools

def Yearly(year):
return itertools.chain(*[(YEARLY_HEADER,)] +
[Monthly(m) for m in range(1, 13)] +
[(YEARLY_FOOTER,)])

基本上,将 YEARLY_HEADERYEARLY_FOOTER 制作成迭代器,它们可以与每月迭代器链接起来。

关于python - 深入——yield from inside yield,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4887133/

26 4 0
Walker 123
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress