Skip to content

Instantly share code, notes, and snippets.

@webgtx
Created August 29, 2024 09:15
Show Gist options
  • Save webgtx/8437af258e1656703bd63cb74638cc6f to your computer and use it in GitHub Desktop.
Save webgtx/8437af258e1656703bd63cb74638cc6f to your computer and use it in GitHub Desktop.
Luhn Algorithm in Python
from fire import Fire
def checksum(cardnumber: int):
cardnumber = [int(i) for i in str(cardnumber)]
cardnumber.reverse()
odd = [v for i, v in enumerate(cardnumber) if i % 2 == 0]
even = [v for i, v in enumerate(cardnumber) if i % 2 != 0]
even_sum = int()
for i in even:
dd = i * 2
if dd > 9:
even_sum += int(str(dd)[0]) + int(str(dd)[1])
else:
even_sum += dd
return even_sum + sum(odd)
Fire(checksum)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment