我目前正在写一个程序,计算不同学生的平均成绩。如果我想让用户输入他们课程的学分值和分数值的百分比;我是否有可能询问学生目前正在参加的课程,并在每次用户输入新变量的值时将每个值分配给新变量。对于每个新输入,如何在每次创建时将它们添加到等式中? 例如:
def gpa1():
return ((x1*y1)+(x2*y2)+(x3*y3)+(x4*y4)+(x5*y5)+(x6*y6)+(x7*y7)+(x8*y8)+(x9*y9)+(x10*y10))/((y1+y2+y3+y4+y5+y6+y7+y8+y9+y10))
如果我总共有10个过程,那么这个等式就是这样的,但是我希望用户可以选择改变他们能够进行的输入,而不是10个。每次用户输入时,都会添加一个新变量my,或者删除一个旧变量my。我怎样才能做到这一切? 我非常感谢任何试图在这方面帮助我的人
这里真正的问题是,您认为n个用户输入需要n个名称。那根本没有必要
您可以将输入存储在容器(列表、字典、元组等)中,也可以在输入时对其进行处理。例如,在收集所有值之后,您不需要计算
y1 + ... + y10
,您可以初始化变量sum_y = 0
并继续添加y
值一种读取用户输入直到看到sentinel值的最低限度方法如下所示:
如果要捕获无效输入,问题Asking the user for input until they give a valid response非常相关
你还应该阅读How do I create a variable number of variables?的答案,以了解为什么你不应该想要你想要的
相关问题 更多 >
编程相关推荐