代码如下:
#encoding=utf-8
print '中国'
def cardLuhnChecksumIsValid(card_number):
""" checks to make sure that the card passes a luhn mod-10 checksum """
sum = 0
num_digits = len(card_number)
oddeven = num_digits & 1
for count in range(num_digits):
digit = int(card_number[count])
if not (( count & 1 ) ^ oddeven):
digit = digit * 2
if digit > 9:
digit = digit - 9
sum = sum + digit
return (sum % 10) == 0
print cardLuhnChecksumIsValid('4063651340421805')
print cardLuhnChecksumIsValid('4063651340421806')
打印结果如下:
中国
True
False