Python如何将两个等长列表的对应元素对齐逐行打印
你使用extend()方法的逻辑不符合需求,extend()的作用是将Ages列表的所有元素整体追加到Names列表的末尾,最终得到的是拼接后的一维列表,自然无法实现两个列表同位置元素配对输出的效果。
你可以通过zip()函数配对两个列表的对应位置元素,再配合格式化字符串控制对齐,实现目标输出:
Names = ["Samson", "Daniel", "Jason", "Delion"] Ages = [16, 18, 34, 27] for name, age in zip(Names, Ages): # 控制name左对齐占8个字符宽度,保证列对齐 print(f"{name:<8}{age}")
运行后输出结果如下:
Samson 16 Daniel 18 Jason 34 Delion 27
如果后续你需要处理长度不一致的两个列表,可以用itertools.zip_longest()替代zip(),可以按更长的列表长度配对,空缺位置可自定义填充值。
内容的提问来源于stack exchange,提问作者user17379637
相关产品推荐
相关产品推荐

