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

如何用Python编写循环:实现好友数量及姓名输入与信息输出?

修正你的Python好友信息收集代码

嘿,你的代码确实存在几个语法和逻辑上的小问题,我来帮你修正并解释清楚:

原代码的问题点

  • 语法错误:int(input("Please enter number of friends")) 后面缺少闭合的括号,直接衔接for循环会导致Python解析失败。
  • 缩进缺失:Python依靠缩进划分代码块,for循环的内部语句必须缩进,否则会报错。
  • 静态提示文本:循环里的提示一直是friend number 1,没法区分不同的好友序号。
  • 未存储所有姓名:每次输入的姓名会覆盖之前的Name变量,最后无法输出全部好友信息。

修正后的代码

# 获取好友数量,加入异常处理避免非数字输入崩溃
try:
    friend_count = int(input("Please enter number of friends: "))
except ValueError:
    print("Please enter a valid number!")
    exit()

# 创建列表存储所有好友姓名
friend_names = []

# 循环输入每个好友的姓名
for i in range(friend_count):
    # 用i+1让序号从1开始,符合用户习惯
    name = input(f"Please enter friend number {i+1}: ")
    friend_names.append(name)

# 格式化输出收集到的信息
print("\n--- Your Friends List ---")
print(f"Total friends: {friend_count}")
print("Friend names:")
for idx, name in enumerate(friend_names, start=1):
    print(f"{idx}. {name}")

代码说明

  1. 加入try-except块是为了处理用户输入非数字的情况,避免程序直接崩溃(如果不需要这个优化,可以直接用friend_count = int(input(...)))。
  2. 用列表friend_names存储所有姓名,不会像单个变量那样覆盖之前的输入。
  3. 用f-string动态生成提示文本,让每个好友的序号正确显示。
  4. 最后分格式输出总数量和所有好友姓名,展示效果更清晰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:54:18