Получение ошибки: «TypeError: объект списка не может быть вызван» в коде [закрыто]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получение ошибки: «TypeError: объект списка не может быть вызван» в коде [закрыто]

Сообщение Anonymous »

У меня есть написанный код, который, я считаю, завершен, но теперь, когда я пытаюсь его запустить, я получаю следующую ошибку:

Код: Выделить всё

Traceback (most recent call last):
File "D:/python/salaries.py", line 29, in 
pay = totalManagerPay(salary)
TypeError: 'list' object is not callable
Я уже немного погуглил, но каждое «решение», которое я нашел, похоже, не работает в моем конкретном случае, поэтому я решил спросить здесь сам.
Мой код здесь:

Код: Выделить всё

now = datetime.now()
dt_string = now.strftime("%m/%d/%Y %H:%M:%S")

def totalManagerPay(salary):
return salary

def totalHourlyPay(hours, rate):
overtime = max(0, hours - 40)
return (hoursWorked - overtime) * hourlyPay + overtime * hourlyPay * 1.5

def totalCommissionPay(sales):
return 350 + 0.057 * sales

def totalPieceWorkerPay(pieces):
bonus = 500 if pieces > 500 else 0
return pieces * 4.50 + bonus

totalManagerPay, totalHourlyPay, totalCommissionPay, totalPieceWorkerPay = [], [], [], []

while True:
payCode = int(input("Enter pay code (0 to quit): "))
if payCode == 0:
print("No employees at this time. Thank you.")
break
if payCode == 1:
print("MANAGER SELECTED")
salary = float(input("Enter gross weekly salary: "))
pay = totalManagerPay(salary)
totalManagerPay.append(pay)
elif payCode == 2:
print("HOURLY WORKER SELECTED")
hoursWorked = float(input("Enter number of hours worked: "))
hourlyPay = float(input("Enter hourly rate: "))
pay = totalHourlyPay(hoursWorked, hourlyPay)
totalHourlyPay.append(pay)
print("Hourly worker's pay is ${pay:.2f}\n")
elif payCode == 3:
print("COMMISSION WORKER SELECTED")
weeklySales = float(input("Enter weekly sales: "))
pay = totalCommissionPay(weeklySales)
totalCommissionPay.append(pay)
print("Commission worker's pay is ${pay:.2f}\n")
elif payCode == 4:
print("PIECE BY PIECE WORKER SELECTED")
piecesProduced = int(input("Enter number of pieces produced: "))
pay = totalPieceWorkerPay(piecesProduced)
totalPieceWorkerPay.append(pay)
print("Piece by Piece worker's pay is ${pay:.2f}\n")
else:
print("Error. Please enter a valid code.")

if any([totalManagerPay, totalHourlyPay, totalCommissionPay, totalPieceWorkerPay]):

print("\n******************** ABCD Inc. ************************")
print("*********** Cumulative Salaries By Pay Code ***********")
print("Employee Pay Code      Number of Employees     Cumulative Salary")
print("-----------------------------------------------------------------------------")

totalSalary, totalEmployees = 0, 0

for payCode, payList in enumerate([totalManagerPay, totalHourlyPay, totalCommissionPay, totalPieceWorkerPay], start=1):
total = sum(payList)
totalSalary += total
totalEmployees += len(payList)
print(f"        {payCode:

Подробнее здесь: [url]https://stackoverflow.com/questions/78388349/getting-error-typeerror-list-object-is-not-callable-in-code[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»