Learn How to Work with Numbers and Strings by Implementing the Luhn Algorithm - Step 33

Tell us what’s happening:

I have submitted the same answer as has been shown on the forum, but the code doesn’t seem to pass on that answer.
Instead it asks for me to place the if statement within the main function, which it already is in.

Your code so far

def verify_card_number(card_number):
    sum_of_odd_digits = 0
    card_number_reversed = card_number[::-1]
    odd_digits = card_number_reversed[::2]

    for digit in odd_digits:
        sum_of_odd_digits += int(digit)

    sum_of_even_digits = 0
    even_digits = card_number_reversed[1::2]
    for digit in even_digits:
        number = int(digit) * 2
        if number >= 10:
            number = (number // 10) + (number % 10)
        sum_of_even_digits += number
    total = sum_of_odd_digits + sum_of_even_digits
    print(total)
    return total % 10 == 0

# User Editable Region

def main():
    card_number = '4111-1111-4555-1142'
    card_translation = str.maketrans({'-': '', ' ': ''})
    translated_card_number = card_number.translate(card_translation)

    if verify_card_number(translated_card_number) is True:
        print('VALID!')
    else: 
        print('INVALID!')
    verify_card_number(translated_card_number)

# User Editable Region


main()

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:132.0) Gecko/20100101 Firefox/132.0

Challenge Information:

Learn How to Work with Numbers and Strings by Implementing the Luhn Algorithm - Step 33

you have an extra call to the function here

you also can remove is True, having the function call as condition is enough as it returns a boolean