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

 更新时间:2017年09月25日 11:51:03   作者:糊糊  
这篇文章主要介绍了Python实现的破解字符串找茬游戏算法,简单分析了找茬游戏的原理,并结合具体实例形式分析了Python实现破解找茬游戏的相关实现技巧,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • PyTorch里面的torch.nn.Parameter()详解

    PyTorch里面的torch.nn.Parameter()详解

    今天小编就为大家分享一篇PyTorch里面的torch.nn.Parameter()详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • python实现的二叉树算法和kmp算法实例

    python实现的二叉树算法和kmp算法实例

    最近重温数据结构,又用python,所以就用python重新写了数据结构的一些东西,以下是二叉树的python写法
    2014-04-04
  • python中字符串最常用的十三个处理操作记录

    python中字符串最常用的十三个处理操作记录

    这篇文章主要给大家介绍了关于python中字符串最常用的13个处理操作的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • Python selenium文件上传下载功能代码实例

    Python selenium文件上传下载功能代码实例

    这篇文章主要介绍了Python selenium文件上传下载功能代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • python中json.dumps和json.dump区别

    python中json.dumps和json.dump区别

    json.dumps将Python对象序列化为JSON字符串,json.dump直接将Python对象序列化写入文件,本文就来介绍一下两个的使用及区别,具有一定的参考价值,感兴趣的可以了解一下
    2024-12-12
  • Python中的pathlib库使用详解

    Python中的pathlib库使用详解

    今天给大家介绍Python中的pathlib库的操作方法,pathlib 是Python内置库,pathlib库对于目录路径的操作更简洁也更贴近 Pythonic(Python代码风格的),对Python pathlib库相关知识感兴趣的朋友一起看看吧
    2022-05-05
  • 如何不用安装python就能在.NET里调用Python库

    如何不用安装python就能在.NET里调用Python库

    这篇文章主要介绍了如何不用安装python就能在.NET里调用Python库,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python sqlite3查询操作过程解析

    Python sqlite3查询操作过程解析

    这篇文章主要介绍了Python sqlite3查询操作过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)

    pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法)

    这篇文章主要介绍了pyinstaller打包成无控制台程序时运行出错(与popen冲突的解决方法),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • python轻松办公将100个Excel中符合条件的数据汇总到1个Excel里

    python轻松办公将100个Excel中符合条件的数据汇总到1个Excel里

    这篇文章主要为大家介绍了python轻松办公将100个Excel中符合条件的数据汇总到1个Excel里示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论