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

Tell us what’s happening:

It says I should have a for loop over even_digits within the verify_card_number function. That’s what I did but it doesn’t work.

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)
    print(sum_of_odd_digits)


/* User Editable Region */

    sum_of_even_digits = 0
    even_digits = card_number_reversed[1::2]
    for digit in even_digits:
        print(digit)

/* User Editable Region */

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

    verify_card_number(translated_card_number)

main()

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0

Challenge Information:

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

The loop should do what it’s supposed to. Looks like there’s missing definition of the main function in the code. Try resetting the step to bring the rest of code to the initial state.

1 Like

Resetting it worked. Thanks for help.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.