python 一次性输入多个数值(列表存储信息)

时间:2024-11-08 11:50:13

今天在完成python的PTA编程题的时候认识到自己知识的巨大漏洞:

7-1 成绩统计

        现有某班级Python考试成绩,请你帮老师做一下成绩统计,找出最高分、最低分,算出平均分,统计出不及格人数

输入格式:

输入在第一行给出班级人数n,第二行为n个学生的成绩(0~100之间的整数),中间用空格分隔。

输出格式:

输出共四行,分别为最高分、最低分、平均分和不及格人数,其中平均分保留1位小数。

输入格式 : 10
80 95 75 85 90 55 66 88 100 58
输出样例: Max: 100
Min: 55
Ave: 79.2
Fail: 2




        这里我采用的是用for循环输入数据,这里其实有点想当然了(认为输入就和C语言输入数组中的数据差不多),导致自己输入数据的样式一直是回车输入,不能一次性输入,暴露出自己列表基础的不牢固。×!!!
        然后提交的时候死活非零输入,PTA报错。要注意:

         利用map(function,input(“以空格分开”).split()) ,可一次性输入多个数据
        [split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)]

由于input( )输出的是用空格分开的字符串,split( )会分割开各个值并放到列表中,此时在列表中的值是字符串,如果要用于运算必须在map( )中利用int( )或者float( )等处理,再赋值。如果需要赋值的值都是字符串的话就没必要用map函数了。


         因为在python3中,map之后并不能直接变为list类型,需要用list()函数转换才行,所以要想正确完成PTA的输入格式则需这样写:

 alist=list(map(int,input().split()))  #这里可向列表中输入多个数据,
 以空格分割数据

PS:严格注意PTA的输入输出样式,这里的输出数据冒号后还须有空格哦!!

完整代码实现如下:

在这里插入图片描述
这里可以使用Python内置的max,min函数,快速求得列表中的最大值,最小值哦!!!


fighting,期末复习加油!!!