Python实现的破解字符串找茬游戏算法示例
本文实例讲述了Python实现的破解字符串找茬游戏算法。分享给大家供大家参考,具体如下:
最近在一个QQ群里发现有那种机器人,发出来字符串找茬游戏:
有点类似于:
没没没没没没没没没没没没没没没没没没
没没没没没没没没没没没没没没没没没没
没没没没没役没没没没没没没没没没没没
没没没没没没没没役没没没没没没没没没
没没没没没没没没没没没没没没没没没没
没没没没没没没没没没没没没没没没没没
玩法就是用户发消息到群里:
#找茬
然后群里有个自动聊天的机器人,他接到这句话之后,会将上面一大堆文字发到群里.
然后你可以发现里面有个"役",这个时候,你就发
#找茬[役]
这条消息到群里,聊天机器人接收到你的消息后会说:回答正确,或者回答错误等等.
有时候,找这个字,眼睛看花,费神,我就用python写了个脚本来处理这个:
#!/usr/bin/envpython
#-*-coding:utf-8-*-
defchar_diff(text):
text=text.replace('\n','').replace('\r','')
try:
text=text.decode('gb18030','ignore')
except:
try:
text=text.decode('utf-8','ignore')
except:
pass
d={}
forxintext:
d[x]=d.get(x,0)+1
lll=d.items()
lll.sort(key=lambdax:x[1])
returnlll[0][0]
if__name__=='__main__':
while1:
text=raw_input(">").decode('gb18030')
#printtype(text)
iftextin['q','e','exit','quit','bye',u'退出']:
print'Bye!'
break
printu'#找茬[%s]'%char_diff(text)
原理很简单,就是统计字符个数,返回出现次数最少的那个.
更多关于Python相关内容可查看本站专题:《Python数据结构与算法教程》、《PythonSocket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。