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

如何让用户仅输入5个元素存入list?编程新手作业求助

如何让用户仅输入5个考试分数并存入列表

嘿,作为刚接触列表的编程新手,能想到结合之前学的循环知识来解决问题真的很棒!针对你的需求——让用户输入恰好5个考试分数并存入列表,这里有两种简单易懂的实现方法,还加了输入验证来避免用户输入无效内容:

方法1:用for循环固定执行次数

这种方法最直观,因为我们明确知道需要输入5次,直接用range(5)让循环跑5次就行:

# 创建一个空列表,用来存放分数
exam_scores = []

# 循环5次,每次获取一个分数
for _ in range(5):
    # 加入输入验证,确保用户输入的是整数
    while True:
        try:
            score = int(input("请输入第{}个考试分数:".format(_ + 1)))
            break
        except ValueError:
            print("哎呀,这不是有效的整数分数,请重新输入!")
    # 把验证通过的分数添加到列表里
    exam_scores.append(score)

# 展示最终的分数列表
print("你输入的5个考试分数为:", exam_scores)

代码解释:

  • exam_scores = []:先初始化一个空列表,用来存储后续输入的分数。
  • for _ in range(5):range(5)会生成0到4的数字,循环刚好执行5次,_是我们不需要用到循环变量时的常用写法。
  • 内层的while True循环:用来做输入验证,如果用户输入的不是整数,会抛出ValueError,这时我们提示用户重新输入,直到输入有效整数才跳出循环。
  • exam_scores.append(score):把每次输入的有效分数添加到列表末尾。

方法2:用while循环+计数器

如果你更习惯用while循环(就像你之前写的退出程序那样),可以用一个计数器来跟踪已经输入的分数数量,直到数量达到5就停止循环:

exam_scores = []
input_count = 0

while input_count < 5:
    try:
        score = int(input("请输入考试分数:"))
        exam_scores.append(score)
        input_count += 1  # 每成功输入一个分数,计数器加1
    except ValueError:
        print("请输入有效的整数分数哦!")

print("你输入的5个考试分数为:", exam_scores)

代码解释:

  • input_count是计数器,初始值为0,每成功输入一个分数就加1。
  • while input_count < 5:只要计数器小于5,循环就继续执行,直到输入满5个分数后退出循环。
  • 同样加入了输入验证,确保用户不会因为输入非数字导致程序报错。

这两种方法都能满足你的需求,你可以根据自己的习惯选择其中一种。如果对列表的其他操作有疑问,随时提问哦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:06:55