Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要基本Python程序的帮助_Python - Fatal编程技术网

需要基本Python程序的帮助

需要基本Python程序的帮助,python,Python,当我遇到这个涉及循环的问题时,我正在尝试学习编程,并且正在做一些练习。问题是: 创建一个获得用户今年课程分数的程序,询问用户他们参加了多少课程。告诉他们有多少门课不及格,他们的最好成绩和最差成绩 我不知道如何显示最好的分数和最差的分数。以下是我得到的: count = 0 total = 0 while True: mark = input("Enter a mark (0-100) <-1 to exit> ") if mark == -1: br

当我遇到这个涉及循环的问题时,我正在尝试学习编程,并且正在做一些练习。问题是:

创建一个获得用户今年课程分数的程序,询问用户他们参加了多少课程。告诉他们有多少门课不及格,他们的最好成绩和最差成绩

我不知道如何显示最好的分数和最差的分数。以下是我得到的:

count = 0
total = 0

while True:
    mark = input("Enter a mark (0-100) <-1 to exit> ")
    if mark == -1:
        break
    elif mark < 50:
        count += 1
        total += mark

print "You failed",count,"class(es). "

再添加两个辅助变量:worstmark和bestmark

然后,在循环中,判断输入是否低于当前worstmark或高于bestmark。相应地分配值。

希望这有助于:

# list of marks
marks = []

# get marks from user
while True:
    mark = input("Enter a mark (0-100) <-1 to exit> ")
    if mark < 0:
        break
    elif mark <= 100:
        marks.append(mark)

# count number of classes failing 
failing = len([f for f in marks if f<50])
best = max(marks)
worst = min(marks)

# check if a least one mark entered 
if (len(marks) > 0):
    print "The number of classes you are failing:",failing
    print "Your best class score:",best
    print "Your worst class score",worst
else:
    print "Your are not taking any classes!"
演示:


提示:您还需要两个变量:最佳和最差。或者您可以跟踪除-1之外的所有标记,并获取序列的最大值和最小值。请您解释一下我将在何处放置辅助变量以及如何使用它们。我试图学习Python,但我不能掌握循环的概念。谢谢@MartijnPieters这就是我的想法,但后来我意识到他在Python2.7上,所以mark变成了int。另外,请记住,如果你没有上过任何课程,那么就没有最好或最差的分数。因此,您可能需要专门处理第一个类。请您解释一下我将在哪里放置helper变量以及如何使用它们。我试图学习Python,但我不能掌握循环的概念。谢谢当你陷入困境时,读一些理论是明智的。一些Python 101教程:玩得开心!哦,我找到了如何修复我的程序!谢谢你的帮助,萨米,我非常感激。干得好。玩得开心!
$ python classes.py
Enter a mark (0-100) <-1 to exit> -1
Your are not taking any classes!

$ python classes.py
Enter a mark (0-100) <-1 to exit> 30
Enter a mark (0-100) <-1 to exit> 40
Enter a mark (0-100) <-1 to exit> 50
Enter a mark (0-100) <-1 to exit> 60
Enter a mark (0-100) <-1 to exit> 70
Enter a mark (0-100) <-1 to exit> 80
Enter a mark (0-100) <-1 to exit> -1
The number of classes you are failing: 2
Your best class score: 80
Your worst class score 30