Python实现的破解字符串找茬游戏算法示例


Posted in Python onSeptember 25, 2017

本文实例讲述了Python实现的破解字符串找茬游戏算法。分享给大家供大家参考,具体如下:

最近在一个QQ群里发现有那种机器人, 发出来字符串找茬游戏:

有点类似于:

没没没没没没没没没没没没没没没没没没
没没没没没没没没没没没没没没没没没没
没没没没没役没没没没没没没没没没没没
没没没没没没没没役没没没没没没没没没
没没没没没没没没没没没没没没没没没没
没没没没没没没没没没没没没没没没没没

玩法就是用户发消息到群里:

#找茬

然后群里有个自动聊天的机器人, 他接到这句话之后, 会将上面一大堆文字发到群里.

然后你可以发现里面有个"役", 这个时候, 你就发

#找茬[役]

这条消息到群里, 聊天机器人接收到你的消息后会说: 回答正确, 或者回答错误等等.

有时候, 找这个字, 眼睛看花, 费神, 我就用python写了个脚本来处理这个:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
def char_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={}
  for x in text:
    d[x]=d.get(x,0)+1
  lll= d.items()
  lll.sort(key = lambda x: x[1])
  return lll[0][0]
if __name__ == '__main__':
  while 1:
    text = raw_input("> ").decode('gb18030')
    #print type(text)
    if text in ['q','e','exit','quit','bye',u'退出']:
      print 'Bye!'
      break
    print u'#找茬[%s] ' % char_diff(text)

原理很简单, 就是统计字符个数, 返回出现次数最少的那个.

更多关于Python相关内容可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
JS设计模式之责任链模式实例详解
Feb 03 Python
python3+PyQt5+Qt Designer实现扩展对话框
Apr 20 Python
Python脚本完成post接口测试的实例
Dec 17 Python
Django框架模板注入操作示例【变量传递到模板】
Dec 19 Python
python使用Paramiko模块实现远程文件拷贝
Apr 30 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
django rest framework 实现用户登录认证详解
Jul 29 Python
Python 变量的创建过程详解
Sep 02 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 Python
OpenCV+python实现膨胀和腐蚀的示例
Dec 21 Python
python编写函数注意事项总结
Mar 29 Python
一篇文章搞懂python混乱的切换操作与优雅的推导式
Aug 23 Python
Python实现破解猜数游戏算法示例
Sep 25 #Python
Python基于identicon库创建类似Github上用的头像功能
Sep 25 #Python
python3使用requests模块爬取页面内容的实战演练
Sep 25 #Python
python中通过预先编译正则表达式提高效率
Sep 25 #Python
python之Character string(实例讲解)
Sep 25 #Python
python利用正则表达式搜索单词示例代码
Sep 24 #Python
不同版本中Python matplotlib.pyplot.draw()界面绘制异常问题的解决
Sep 24 #Python
You might like
地摊中国 - 珍藏老照片
2020/08/18 杂记
ajax在joomla中的原生态应用代码
2012/07/19 PHP
显示程序执行时间php函数代码
2013/08/29 PHP
Parse正式发布开源PHP SDK
2014/08/11 PHP
php实现支付宝当面付(扫码支付)功能
2018/05/30 PHP
Jquery.TreeView结合ASP.Net和数据库生成菜单导航条
2010/08/27 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
jquery实现平滑的二级下拉菜单效果
2015/08/26 Javascript
js文本框输入内容智能提示效果
2015/12/02 Javascript
灵活的理解JavaScript中的this指向
2016/02/25 Javascript
基于js对象,操作属性、方法详解
2016/08/11 Javascript
jQuery插件zTree实现删除树子节点的方法示例
2017/03/08 Javascript
jquery中有哪些api jQuery主要API
2017/11/20 jQuery
vue移动端UI框架实现QQ侧边菜单组件
2018/03/09 Javascript
JS中原始值和引用值的储存方式示例详解
2018/03/23 Javascript
JS实现判断图片是否加载完成的方法分析
2018/07/31 Javascript
微信小程序使用wxParse解析html的实现示例
2018/08/30 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
2018/12/05 Javascript
js中forEach,for in,for of循环的用法示例小结
2020/03/14 Javascript
python3使用tkinter实现ui界面简单实例
2014/01/10 Python
简介Python中用于处理字符串的center()方法
2015/05/18 Python
python面向对象实现名片管理系统文件版
2019/04/26 Python
python rsync服务器之间文件夹同步脚本
2019/08/29 Python
python飞机大战pygame碰撞检测实现方法分析
2019/12/17 Python
Python如何实现小程序 无限求和平均
2020/02/18 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
Django admin管理工具TabularInline类用法详解
2020/05/14 Python
国际礼品店:GiftsnIdeas
2018/05/03 全球购物
高校教师思想汇报
2014/01/11 职场文书
给男朋友的道歉信
2014/01/12 职场文书
初一学生评语大全
2014/04/24 职场文书
查摆剖析材料范文
2014/09/30 职场文书
个人自荐书范文
2015/03/09 职场文书
母亲去世追悼词
2015/06/23 职场文书
信息技术国培研修日志
2015/11/13 职场文书
攻略丨滑雪究竟该选哪款对讲机?
2022/02/18 无线电