最近刷题,反复遇到DTMF电话音相关题目,遇见得到的长按键字符串,懒得一个个照着九键键盘解码,索性就写了个字典解码脚本。
(学艺不精,大佬师傅们敬请谅解!OTZ)
dic={"2":"a", "22":"b", "222":"c", "3":"d", "33":"e", "333":"f", "4":"g", "44":"h", "444":"i", "5":"j", "55":"k", "555":"l", "6":"m", "66":"n", "666":"o", "7":"p", "77":"q", "777":"r", "7777":"s", "8":"t", "88":"u", "888":"v", "9":"w", "99":"x", "999":"y", "9999":"z"}
#九键键盘字典
#flag="999*666*88*2*777*33*6*999*4*444*777*555*333*777*444*33*66*3*7777"
flag = str(open('flag.txt').read().encode('utf-8')) #读取源文件
real_flag=''
mid=''#中间变量
#当使用字符串时,将2改为0,将-1删掉
for i in range(2,len(flag)-1):
if flag[i]!='*':
mid += flag[i]
else:
real_flag += dic[mid]
mid=''
real_flag += dic[mid]
print(real_flag)