You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python嵌套循环遍历双列表打印结果重复翻倍问题求助

问题原因

你当前使用了嵌套for循环,会对parent_names的每一个元素,遍历完整的parent_birthdays列表,最终输出的条目数是两个列表长度的乘积,这就是数据翻倍重复的根源。

修复方案

使用Python内置的zip()函数,将姓名列表和生日列表按索引位置一一配对,遍历配对后的结果即可。

修正后的代码如下:

print("Geneaology for: \n\t" + user_name + "\t\t" + user_birthday)
print("Parents: ")
# 打印父母的姓名和出生日期
for x, y in zip(parent_names, parent_birthdays):
    print("\t" + x + "\t\t" + y)
print("Siblings: ")
# 打印兄弟姐妹的姓名和出生日期
for x, y in zip(sibling_names, sibling_birthdays):
    print("\t" + x + "\t\t" + y)
print("Grandparents: ")
# 打印祖父母/外祖父母的姓名和出生日期
for x, y in zip(grandparent_names, grandparent_birthdays):
    print("\t" + x + "\t\t" + y)

注意:zip()默认会以较短的列表长度为准停止配对,如果需要保证所有元素都被输出,可以使用itertools.zip_longest()为缺失值设置占位符。

内容的提问来源于stack exchange,提问作者jeremslol

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:06:05