Try   HackMD

第六堂 身份證字號驗證

code = { 'A':"10", 'B':"11", 'C':"12", 'D':"13", 'E':"14", 'F':"15", 'G':"16", 'H':"17", 'I':"34", 'J':"18", 'K':"19", 'M':"21", 'N':"22", 'O':"35", 'P':"23", 'Q':"24", 'T':"27", 'U':"28", 'V':"29", 'W':"32", 'X':"30", 'Z':"33", } weight = [1,9,8,7,6,5,4,3,2,1,1] # 權重 ID = input("請輸入身份證字號:") nList = [] nList.append(code[ID[0]][0]) nList.append(code[ID[0]][1]) for char in ID[1:]: nList.append(char) s = 0 # 加總分 for i in range(len(nList)): s += int(nList[i]) * weight[i] if s % 10 == 0: print("身分證字號合法") else: print("身份證字號不合法")