九键解码脚本,python

最近刷题,反复遇到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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值