вернуть итоговый результат на python

#python

#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)
  

Комментарии:

1. Возможно, если бы вы указали природу вашей «проблемы», кто-нибудь мог бы вам помочь.

2. Вы не указали, в чем заключается ваша проблема. Но я готов поспорить, что основная проблема, с которой вы сталкиваетесь, заключается в том, что вы не передаете требуемые аргументы totalSales() . Посмотрите, как вы определили функцию, и посмотрите, как вы ее вызываете.

3. я пытаюсь сложить всю сумму продаж в in totalsales, а затем вернуть ее

4. @vtecjustkickedinyo Вы все еще не объяснили, в чем ваша проблема . Кроме того, вы читали мой комментарий? Очень внимательно прочитайте свой код. Вы должны передать аргументы вызываемой вами функции.

5. как мне это сделать?

Ответ №1:

Вы должны передать необходимую информацию в свою функцию. У вас есть пять входных параметров. Когда вы вызываете функцию, вы должны присвоить ей пять значений.

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

… в вашем главном должно быть исправлено проблему.


ПОДРОБНЕЕ

Проблема, которую я вижу при запуске вашего кода, выглядит следующим образом. Обратите внимание на последнюю строку сообщения об ошибке: в ней описывается проблема. В будущем не забудьте включить это в свою публикацию.

 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)
  

Ответ №2:

Вам нужно передать аргументы функции 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()
  

Ответ №3:

Вы не передаете требуемые аргументы своей 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()