Создание условной функции в Python - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь создать функцию расчета налоговых вычетов в python на основе ряда условных утверждений. Я получаю синтаксическую ошибку в моем первом условном утверждении «если» и не уверен, почему.

1 = 'single'
2 = 'married filing jointly'
3 = 'head of household'

def deductions(income, filing_category): ## define function

    if ((filing_category = 1) and (income >= 12200)):
        return income - 12200
    elif((filing_category = 2) and (income >= 24400)):
        return income - 24400
    elif((filing_category = 3) and (income >= 18350)):
        return income - 18350
    else:
        return 'no taxes due'

q = deductions(10000, 1) ## call function
print(q) ## print result

Если бы кто-нибудь мог предложить какое-либо понимание того, какие синтаксические ошибки я могу совершить, это было бы здорово. Я новичок в программировании.

1 Ответ

3 голосов
/ 10 февраля 2020

Заменить filing_category = 1 на filing_category == 1. Сделайте это для других экземпляров = в ваших операторах if.

Одиночный = является оператором присваивания, присваивающим значение переменной. Оператор равенства, который проверяет, равны ли две вещи, равен ==. Обратитесь к python документации по операторам для получения дополнительной информации.

...