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 相关文章推荐
Python实现partial改变方法默认参数
Aug 18 Python
Python Web框架Flask中使用新浪SAE云存储实例
Feb 08 Python
Python中的高级函数map/reduce使用实例
Apr 13 Python
Python中的元类编程入门指引
Apr 15 Python
基于Django contrib Comments 评论模块(详解)
Dec 08 Python
浅谈numpy数组的几种排序方式
Dec 15 Python
Python实现感知器模型、两层神经网络
Dec 19 Python
解决python "No module named pip" 的问题
Oct 13 Python
Django中如何使用sass的方法步骤
Jul 09 Python
详解一种用django_cache实现分布式锁的方式
Sep 01 Python
python实现高斯(Gauss)迭代法的例子
Nov 20 Python
基于Python爬取股票数据过程详解
Oct 21 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
PHP根据传入参数合并多个JS和CSS文件的简单实现
2014/06/13 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
PHP+Ajax实时自动检测是否联网的方法
2015/07/01 PHP
PHP的AES加密算法完整实例
2016/07/20 PHP
宝塔面板在NGINX环境中TP5.1如何运行?
2021/03/09 PHP
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
2011/05/28 Javascript
div浮层,滚动条移动,位置保持不变的4种方法汇总
2013/12/11 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
2014/08/12 Javascript
JavaScript类继承及实例化的方法
2015/07/25 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
Vue.js每天必学之过滤器与自定义过滤器
2016/09/07 Javascript
微信小程序promsie.all和promise顺序执行
2017/10/27 Javascript
vue2 mint-ui loadmore实现下拉刷新,上拉更多功能
2018/03/21 Javascript
JS二级菜单不同实现方法分析【4种方法】
2018/12/21 Javascript
axios携带cookie配置详解(axios+koa)
2018/12/28 Javascript
Vue 自定义指令实现一键 Copy功能
2019/09/16 Javascript
微信小程序之左右布局的实现代码
2019/12/13 Javascript
vue elementui tree 任意级别拖拽功能代码
2020/08/31 Javascript
ubuntu环境下python虚拟环境的安装过程
2018/01/07 Python
django orm 通过related_name反向查询的方法
2018/12/15 Python
python global关键字的用法详解
2019/09/05 Python
pytorch点乘与叉乘示例讲解
2019/12/27 Python
Python多线程threading join和守护线程setDeamon原理详解
2020/03/18 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
详解canvas多边形(蜘蛛图)的画法示例
2018/01/29 HTML / CSS
经济实惠的豪华家具:My-Furniture
2019/03/12 全球购物
千禧酒店及度假村官方网站:Millennium Hotels and Resorts
2019/05/10 全球购物
管理科学大学生求职信
2013/11/13 职场文书
国际会议邀请函范文
2014/01/16 职场文书
环保志愿者活动总结
2014/06/27 职场文书
行政管理专业求职信
2014/07/06 职场文书
2014年仓库管理员工作总结
2014/11/18 职场文书
2014年高二班主任工作总结
2014/12/16 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
餐馆开业致辞
2015/08/01 职场文书
Python爬虫:从m3u8文件里提取小视频的正确操作
2021/05/14 Python