在python上返回总数

时间:2016-10-25 00:25:35

标签: python

我在返回总数然后在输出中打印时遇到模块化python问题。伸出援助之手?

def main():
    Monday = int(input("Enter the store sales for Monday: "))
    Tuesday = int(input("Enter the store sales for Tuesday: "))
    Wednesday = int(input("Enter the store sales for Wednesday: "))
    Thursday = int(input("Enter the store sales for Thursday: "))
    Friday = int(input("Enter the store sales or Friday: "))

    total = totalSales()
    print("the total sales for the week are:", total)


def totalSales(Monday, Tuesday, Wednesday, Thursday, Friday):
    weeklyTotal = Monday + Tuesday + Wednesday + Thursday + Friday
    return weeklyTotal

main()

错误讯息:

Enter the store sales for Monday: 5
Enter the store sales for Tuesday: 4
Enter the store sales for Wednesday: 6
Enter the store sales for Thursday: 2
Enter the store sales or Friday: 8
Traceback (most recent call last):
  File "so.py", line 16, in <module>
    main()
  File "so.py", line 8, in main
    total = totalSales()
TypeError: totalSales() takes exactly 5 arguments (0 given)

3 个答案:

答案 0 :(得分:0)

您必须将所需信息传递给您的函数。您有五个输入参数。当你调用这个函数时,你必须给它五个值。

total = totalSales(Monday, Tuesday, Wednesday, Thursday, Friday)

...在您的中应解决问题。

<强> DETAIL

我在运行代码时看到的问题看起来像这样。 请注意错误消息的最后一行:它描述了问题。 将来,请记住将此内容包含在您的帖子中。

Enter the store sales for Monday: 5
Enter the store sales for Tuesday: 4
Enter the store sales for Wednesday: 6
Enter the store sales for Thursday: 2
Enter the store sales or Friday: 8
Traceback (most recent call last):
  File "so.py", line 16, in <module>
    main()
  File "so.py", line 8, in main
    total = totalSales()
TypeError: totalSales() takes exactly 5 arguments (0 given)

答案 1 :(得分:0)

您需要将参数传递给totalSales函数。 当您使用参数调用函数时,请记住将它们包含在调用中。作为一个非常基本的例子:

<强>功能

def AddNumbers(x, y):
    return x + y

拨打

AddNumbers(1,2) #<-1 and 2 represent x and y in the above function

在您的代码中,您将函数声明为:

def totalSales(Monday, Tuesday, Wednesday, Thursday, Friday):

但是当你调用它时,你不会传递任何参数:

total = totalSales()

应该是:

def main():
    Monday = int(input("Enter the store sales for Monday: "))
    Tuesday = int(input("Enter the store sales for Tuesday: "))
    Wednesday = int(input("Enter the store sales for Wednesday: "))
    Thursday = int(input("Enter the store sales for Thursday: "))
    Friday = int(input("Enter the store sales or Friday: "))

    total = totalSales(Monday, Tuesday, Wednesday, Thursday, Friday)
    print("the total sales for the week are:", total)


def totalSales(Monday, Tuesday, Wednesday, Thursday, Friday):
    weeklyTotal = Monday + Tuesday + Wednesday + Thursday + Friday
    return weeklyTotal

main()

答案 2 :(得分:0)

您没有将所需的参数传递给totalSales()函数,因为它需要5个参数而您没有给出任何参数。我还修复了print语句,因为输出看起来很奇怪。

代码:

def main():
    Monday = int(input("Enter the store sales for Monday: "))
    Tuesday = int(input("Enter the store sales for Tuesday: "))
    Wednesday = int(input("Enter the store sales for Wednesday: "))
    Thursday = int(input("Enter the store sales for Thursday: "))
    Friday = int(input("Enter the store sales or Friday: "))

    total = totalSales(Monday, Tuesday, Wednesday, Thursday, Friday) # Added arguments to function
    print("the total sales for the week are: %s" % total) # Fixed Print


def totalSales(Monday, Tuesday, Wednesday, Thursday, Friday):
    weeklyTotal = Monday + Tuesday + Wednesday + Thursday + Friday
    return weeklyTotal

main()