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

Python新手求助:如何基于用户输入在for循环中构建并行列表并正确输出

Python并行列表录入与格式化输出问题解决

我是Python入门新手,想要编写一个程序:先询问用户需要录入的条目数量,再依次收集姓名和地址存入并行列表,最后按指定格式输出。目前我的代码要么仅打印循环的最后一次结果,要么输出带括号且内容顺序混乱。

现有代码:

namelist = []
addrlist = []

n = int(input("How many people?: "))


for i in range(n):
    namelist.append(input("Name?: "))
    addrlist.append(input("Address?: "))
    
print("{} lives in {}".format(namelist, addrlist))

期望输入输出示例

Input
How many people?: 3
Name?: Brandy
Address?: Queens, NY
Name?: Aura
Address?: Los Angeles, CA
Name?: Kendrick
Address?: Chicago, IL

Output
Brandy lives in: Queens, NY
Aura lives in: Los Angeles, CA
Kendrick lives in: Chicago, IL

问题分析与解决方案

你当前的问题是最后打印时直接传入整个列表,导致输出的是列表的原始字符串表示(带括号和逗号),且没有实现逐个条目对应输出。只需遍历两个列表的对应元素,逐一格式化即可。

修改后的代码:

namelist = []
addrlist = []

n = int(input("How many people?: "))

for i in range(n):
    namelist.append(input("Name?: "))
    addrlist.append(input("Address?: "))

# 配对姓名和地址,逐个输出
for name, addr in zip(namelist, addrlist):
    print("{} lives in: {}".format(name, addr))

zip(namelist, addrlist)会将两个列表中同一位置的元素配对成元组,循环时每次取出一组姓名和地址,就能按照你想要的格式输出每条记录了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 21:22:24