回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个关于收益和收益之间的差异的问题,特别是当它们与islice结合使用时。这是我的密码:</p>
<pre><code>def get_table_row():
iter_veh = get_data(fp_vehicle, vehicles_cols, Vehicles)
iter_per = get_data(fp_personal, personals_cols, Personals)
iter_emp = get_data(fp_employment, employments_cols, Employments)
iter_upd = get_data(fp_update, updates_cols, Updates)
yield from ((*v, *p, *e, *u) for v, p, e, u in zip(iter_veh, iter_per, iter_emp, iter_upd))
from itertools import islice
for row in islice(get_table_row(), 5):
print(*row)
</code></pre>
<p>这将从表中正确打印出5行记录。你知道吗</p>
<p>但是,如果我使用以下代码:</p>
<pre><code>def get_table_row():
iter_veh = get_data(fp_vehicle, vehicles_cols, Vehicles)
iter_per = get_data(fp_personal, personals_cols, Personals)
iter_emp = get_data(fp_employment, employments_cols, Employments)
iter_upd = get_data(fp_update, updates_cols, Updates)
yield ((*v, *p, *e, *u) for v, p, e, u in zip(iter_veh, iter_per, iter_emp, iter_upd))
from itertools import islice
for row in islice(get_table_row(), 5):
print(*row)
</code></pre>
<p>这将导致打印出所有行。这里唯一的区别是收益率与收益率。我需要一个解释。谢谢!你知道吗</p>