我尝试使用以下命令一次迭代 3 个元素(这似乎有效):
for a, b, c in zip(*[iter(accounts_iter)]*3):
print(a)
print(b)
print(c)
Run Code Online (Sandbox Code Playgroud)
accounts_iter是我创建的元组列表。iter(accounts_iter)解压accounts_iter成一个列表迭代器,所以它仍然是一个元组列表,只是它现在是可迭代的这是我很难理解的地方。
*[iter(accounts_iter)]将列表解压Step 2成单独的元组,因此不再是元组列表,而是单个元组*[iter(accounts_iter)]*3乘以 3在我的输出中,我似乎没有重复项,但确实能够每个循环处理 3 个项目。
但是一旦发生,我不会拥有同一个元组的 3 个副本吗zip(*[iter(accounts_iter)]*3)?