我已经创建了一个计算学生平均水平的程序,我希望根据用户输入来创建输入,例如:如果用户键入5,它就会创建5个输入。
print('Average of students')
def student_average():
while True:
try:
# I want to create inputs depending on the user's input in the following question:
number_of_qualifications = int(input('What is the number of qualifications?: '))
qualification_1 = float(input('What is the first qualification?: '))
qualification_2 = float(input('What is the second qualification?: '))
qualification_3 = float(input('What is the third qualification?: '))
qualification_4 = float(input('What is the fourth qualification?: '))
break
except:
print('This is not an option')
sum = (qualification_1 + qualification_2 + qualification_3 + qualification_4)
average = (sum / 4)
print(average)
student_average()发布于 2022-03-20 02:51:36
你需要用一个循环。我已经删除了try/except,如果你愿意,你可以把它加回去。
def student_average():
number_of_qualifications = int(input('What is the number of qualifications?: '))
sumx = 0
for _ in range(number_of_qualifications):
sumx += float(input('What is the next qualification?: '))
return sumx / number_of_qualifications
print(student_average())发布于 2022-03-20 02:58:00
我已经修改了你的代码,所以除了尝试之外的功能被保留了下来。
def student_average():
total, c = 0,0
number_of_qualifications = int(input('What is the number of qualifications?: '))
while True:
try:
# I want to create inputs depending on the user's input in the following question:
total += float(input(f'{c+1} What is the qualification?: '))
c += 1
if c == number_of_qualifications:
break
except:
print('This is not an option')
average = (total / number_of_qualifications)
print(average)
print('Average of students')
student_average()输出:
Average of students
What is the number of qualifications?: 3
1 What is the qualification?: 4
2 What is the qualification?: 5
3 What is the qualification?: a
This is not an option
3 What is the qualification?: 6
5.0发布于 2022-03-20 13:03:24
请不要使用"sum“作为变量,因为它是Python保留的单词。如果以前使用过它,则必须重新启动内核。
def student_average():
cnt = 1
total_list = []
number_of_qualifications = int(input('What is the number of qualifications?: '))
while len(total_list) < number_of_qualifications:
try:
# I want to create inputs depending on the user's input in the following question:
total_list.append(float(input(f'{cnt}. What is the qualification?: ')))
cnt += 1
except:
print('This is not an option')
return (sum(total_list) / number_of_qualifications)
print('Average of students =', student_average())输出
What is the number of qualifications?: 5
1. What is the qualification?: 10
2. What is the qualification?: 20
3. What is the qualification?: 30
4. What is the qualification?: aa
This is not an option
4. What is the qualification?: 40
5. What is the qualification?: 50
Average of students = 30.0https://stackoverflow.com/questions/71543664
复制相似问题