熱線電話:13121318867

登錄
首頁精彩閱讀Python實現的破解字符串找茬游戲算法示例
Python實現的破解字符串找茬游戲算法示例
2018-01-26
收藏

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)
原理很簡單, 就是統計字符個數, 返回出現次數最少的那個.

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢