。 (單選,填字母:A.s=dic[ticket[-6:-4]]/B.s=dic[ticket[-6:-5]]) (2)實現查詢功能的Python程序如下,請在橫線處填入合適的代碼 while True: ticket=① num=0 for i in ticket: if i>=“0“and i<=“9“: num=num+1 If len(ticket)!=10: print(“輸入長度不符合要求“) elif ②: print(“輸入存在非數字字符“) else: break dic={“13“:“普通藝術類“,“14“:“普通體育類“,“15“:“普通綜合類“,“23“:“單項藝術類“,“24“:“單項體育類“,“25“:“單項綜合類“} s=dic[ticket[4:6]] print(“該考生的考試科類為:“,s)
14.在計算機進行加密或解密過程中,經常會對字符串進行移位等變換操作。某字符串的變換規則描述如下:①輸入的字符為十六進制數(英文字母大寫,確保輸入的個數為 3 的倍數),如 4AC ②字符串中的每個字符轉成四位二進制,按序拼接,如 010010101100 ③二進制字符串每 4 位進行前后倒置(即4位數左右倒置)操作,如 001001010011 ④將倒置后的字符串每 3 位轉換成 1 位十進制,按序拼接后輸出該十進制串。運行結果如下圖所示: 根據該規則編寫的程序如下,請回答以下問題: (1)程序中加框處代碼有誤,請改正 (2)請在下橫線處補充完整程序 Hex={“0“:“0000“,“1“:“0001“,“2“:“0010“,“3“:“0011“,“4“:“0100“,“5“:“0101“,“6“:“0110“,“7“:“0111“,“8“:“1000“,“9“:“1001“,“A“:“1010“,“B“:“1011“,“C“:“1100“,“D“:“1101“,“E“:“1110“,“F“:“1111“} sch=input(“請輸入一個十六進制數(字母大寫):“) th=““ for k in sch: if“0“<=k<=“9“or“A“<=k<=“F“:#若 k 為數字字符或大寫字母 ①
#每 1 位十六進制轉成 4 位二進制 ts=““ for i in range(0,②
):#每 4 位進行前后倒置 ts+=th[i+3]+th[i+2]+th[i+1]+th[i] tob=““ tmp=0 for i in range(len(ts)):#二進制串轉十進制 tmp=tmp*2+int(ts[i])#累乘相加轉換成十進制 if :#每 3 個字符為一組進行轉換后的拼接 tob=tob+str(tmp) tmp=0 print(“變換后的字符串為:“,tob)