如何让Python函数计算数学运算?

如何让Python函数计算数学运算?,python,python-3.x,Python,Python 3.x,我的任务是创建一个程序,要求用户重复输入任何正整数,或键入任何其他内容以结束并生成数字的总和、计数和平均值。我的老师希望这个结构中的所有代码都只有这三个def 这是我的代码,关于如何让它工作有什么建议吗 def calcAverage(total,count): sum = 0 count = 0 average = sum / count def inputNumber(message): while True: try:

我的任务是创建一个程序,要求用户重复输入任何正整数,或键入任何其他内容以结束并生成数字的总和、计数和平均值。我的老师希望这个结构中的所有代码都只有这三个def

这是我的代码,关于如何让它工作有什么建议吗

def calcAverage(total,count):
    sum = 0
    count = 0
    average = sum / count 

def inputNumber(message):
    while True:
        try:
            userInput = int(input(message))
            count = count + 1
            sum = sum + entry
                if userInput < 0:
                   raise ValueError
             except ValueError:
                main()
        else:
          return userInput 
          break

entry = inputNumber('Type any positive integer, anything else to quit')

def main():
    print('Sum')
    print(sum)
    print('Average')
    print(average)
    print('Total Numbers')
    print(count)
def平均值(总计、计数):
总和=0
计数=0
平均数=总和/计数
def输入编号(消息):
尽管如此:
尝试:
userInput=int(输入(消息))
计数=计数+1
总和=总和+分录
如果用户输入<0:
升值误差
除值错误外:
main()
其他:
返回用户输入
打破
entry=inputNumber('键入任何正整数,还有什么要退出的')
def main():
打印('Sum')
打印(总和)
打印('平均')
打印(平均)
打印('总数')
打印(计数)

这个问题没有得到很好的解释+我们真的不知道边界是什么。此外,您应该清楚地说明哪些不起作用。现在,给你一些提示,我将这样做:

input = None
L = list()
while True:
    try:
        input = int(input('Type any positive integer, anything else to quit: '))
        if input < 0:
            break
        else:
            L.append(input)
    except:
        break

S = sum(L)
input=None
L=列表()
尽管如此:
尝试:
input=int(input('键入任何正整数,任何要退出的内容:'))
如果输入<0:
打破
其他:
L.append(输入)
除:
打破
S=总和(L)

我认为这里不需要使用异常。条件陈述会让事情变得更清楚。
我将把有效的输入放在一个列表中,直到用户做出无效的输入。发生这种情况时,只需使用break语句退出while循环并返回结果。

您的while循环出了什么问题?嗨,Nicole,您似乎对python中函数的工作方式有一个根本性的误解。没有函数返回值,但您正在尝试打印函数内部定义的变量。也许你应该更深入地研究函数。你有缩进错误。使用try/except检查用户输入是否有效非常有用。