Python 如何找到平均值?
我正在做一个程序,用一组数字求平均值。目前它可以工作,但我想知道是否有任何方法可以使它更容易或更干净。这是相当混乱和糟糕的。我是否可以使用循环或任何东西来简化它Python 如何找到平均值?,python,average,Python,Average,我正在做一个程序,用一组数字求平均值。目前它可以工作,但我想知道是否有任何方法可以使它更容易或更干净。这是相当混乱和糟糕的。我是否可以使用循环或任何东西来简化它 NON = raw_input("How many numbers are there? ") NON = int(NON) if NON == 2: n1 = raw_input("First Number: ") n1 = int(n1) n2 = raw_input("Second Number: ")
NON = raw_input("How many numbers are there? ")
NON = int(NON)
if NON == 2:
n1 = raw_input("First Number: ")
n1 = int(n1)
n2 = raw_input("Second Number: ")
n2 = int(n2)
mean = (n1 + n2)/2
print mean
print mean
在这之后一直持续到15岁。我只是手工做的。试试功能。函数将对代码进行分组,并可用于多次调用 一个例子
def average(number1, number2):
return (int(number1) + int(number2)) / 2
NON = raw_input("How many numbers are there? ")
NON = int(NON)
if NON == 2:
n1 = raw_input("First Number: ")
n2 = raw_input("Second Number: ")
print average(n1,n2)
尝试一个函数。函数将对代码进行分组,并可用于多次调用 一个例子
def average(number1, number2):
return (int(number1) + int(number2)) / 2
NON = raw_input("How many numbers are there? ")
NON = int(NON)
if NON == 2:
n1 = raw_input("First Number: ")
n2 = raw_input("Second Number: ")
print average(n1,n2)
您可以编写它,这样用户就可以无限期地输入数字:
numbers = []
while True:
numbers.append(int(raw_input("What is the next number?")))
done = raw_input("Are you done? (Y/N) ")
if done.lower() == "y":
break
print("The average is {}".format(sum(numbers)/len(numbers)))
您可以编写它,这样用户就可以无限期地输入数字:
numbers = []
while True:
numbers.append(int(raw_input("What is the next number?")))
done = raw_input("Are you done? (Y/N) ")
if done.lower() == "y":
break
print("The average is {}".format(sum(numbers)/len(numbers)))
处理此问题的常用方法是使用
for()
循环
NON = raw_input("How many numbers are there? ")
NON = int(NON)
sum = 0
for i in range(NON):
number = raw_input("Enter Number #"+str(i)+": ")
number = int(number)
sum += number
average = sum / NON
print("Average is: "+str(average))
处理此问题的常用方法是使用
for()
循环
NON = raw_input("How many numbers are there? ")
NON = int(NON)
sum = 0
for i in range(NON):
number = raw_input("Enter Number #"+str(i)+": ")
number = int(number)
sum += number
average = sum / NON
print("Average is: "+str(average))
尝试将用户输入存储在数组中,然后执行以下操作:
sum = 0
list = [11,22,33,44,55,66,77]
for num in list:
sum = sum +num
average = sum / len(list)
print ("Average of list element is ", average )
尝试将用户输入存储在数组中,然后执行以下操作:
sum = 0
list = [11,22,33,44,55,66,77]
for num in list:
sum = sum +num
average = sum / len(list)
print ("Average of list element is ", average )
我有一种方法可以做到这一点,那就是嵌套循环
students = int(input("How many students do you have? "))
tests = int(input("How many test for your module? "))
for x in range(students):
x += 1
total = 0
print(f'****** Student # {x} ******')
for y in range(tests):
y += 1
score = float(input(f'Test number {y}: '))
total = (total + c)
ave = total/tests
print(f'The ave for student # {x} is: {ave:.1f}')
我有一种方法可以做到这一点,那就是嵌套循环
students = int(input("How many students do you have? "))
tests = int(input("How many test for your module? "))
for x in range(students):
x += 1
total = 0
print(f'****** Student # {x} ******')
for y in range(tests):
y += 1
score = float(input(f'Test number {y}: '))
total = (total + c)
ave = total/tests
print(f'The ave for student # {x} is: {ave:.1f}')
欢迎来到StackOverflow!我们不是代码审查服务。如果你没有问题,你可以在这里问你的问题→ 你似乎知道什么是循环,也许做一个快速的谷歌搜索会有所帮助?我们不是来为你写代码的,你知道…在什么意义上更容易?更短的通过组合现在在多行中完成的一些操作,您的代码可以在更少的行中完成,但是为了得到正确的答案,您的代码所做的一切都必须完成。欢迎使用StackOverflow!我们不是代码审查服务。如果你没有问题,你可以在这里问你的问题→ 你似乎知道什么是循环,也许做一个快速的谷歌搜索会有所帮助?我们不是来为你写代码的,你知道…在什么意义上更容易?更短的通过将现在在多行中执行的一些操作组合在一起,您的代码可以在更少的行中完成,但为了得到正确的答案,您的代码所做的每件事都必须完成。除了您编写的函数不能组成更大数目的平均值…@ShadowRanger感谢您指出这一点。我真的不明白这个问题。我以为他只是想让它更干净更简单。他要的是“布景”,每个人都给他一张“单子”。集合不允许重复,而列表允许。除了您编写的函数不允许平均较大数量的值之外…@ShadowRanger感谢您指出这一点。我真的不明白这个问题。我以为他只是想让它更干净更简单。他要的是“布景”,每个人都给他一张“单子”。集合不允许重复,而列表允许重复。这里是最优雅的解决方案,但有一个小的输入错误,
格式
和附加
括号谢谢。“你完成了吗?(Y/N)”在我写它的时候感觉不优雅。在这种情况下,你仍然需要一个用户输入来打破循环,否则脚本将不支持无限数量的输入。看看金斯利的答案;实际上,这是一个更好的方法,但乍看起来并不那么吸引人:DUser必须提前选择输入的数量,这是我试图避免的。同意如果你接受了这个约束,那么这样做会更好。这里是最优雅的解决方案,但是有一个小的拼写错误,格式
和附加
括号谢谢。“你完成了吗?(Y/N)”在我写它的时候感觉不优雅。在这种情况下,你仍然需要一个用户输入来打破循环,否则脚本将不支持无限数量的输入。看看金斯利的答案;实际上,这是一个更好的方法,但乍看起来并不那么吸引人:DUser必须提前选择输入的数量,这是我试图避免的。同意如果你接受了这个约束,那么这样做更好。