如下:
def verify(numbers: str):
?
"""驗證8位信用卡號的正確性
:param numbers: 8位數字組成的字符串
:return:
"""
assert len(numbers) == 8, "請輸入的8位字符串"
numbers_list = [int(x) for x in numbers] ?# [1, 2, 3, 4, 5, 6, 7, 8]
# 從最右邊數字開始,隔壹位取壹個數相加
sum1 = sum(numbers_list[::-2])
# 每壹位乘2
time2 = [str(x * 2) for x in numbers_list[-2::-2]]
# 每壹位相加
time2_str = "".join(time2) ?# "141062"
sum2 = 0
for i in time2_str:
sum2 += int(i)
# 將上述兩步得到的值相加
sum3 = sum1 + sum2
# 如果結果個位數字為0,則輸入的信用卡號是有效的
if sum3 % 10 == 0:
return True
else:
return False
verify("12345678")
介紹
Python解釋器易於擴展,可以使用C或C++(或者其他可以通過C調用的語言)擴展新的功能和數據類型。Python 也可用於可定制化軟件中的擴展程序語言。Python豐富的標準庫,提供了適用於各個主要系統平臺的源碼或機器碼。?
2021年10月,語言流行指數的編譯器Tiobe將Python加冕為最受歡迎的編程語言,20年來首次將其置於Java、C和JavaScript之上。