4 Pics 1 Word,穷举答题

 

在朋友的手机上看到一个游戏:4 Pics 1 Word

 

给定四幅图片单词长度备选字母,要求回答出对应的单词。游戏界面如下图所示:

(这道题的答案是car)

游戏挺好玩的,但是由于单词量太小,挫折感很强。于是决定写个程序来暴力枚举:

View Code
 1 #########################################
 2 ## Crack the game "4 Pics 1 Word"
 3 ##
 4 ## Author: grepall@gmail.com
 5 #########################################
 6 
 7 def isQualifyWord(word, length, candStr):
 8     capWord = word.upper()
 9     acceptAlpha = list(candStr)
10     if len(capWord) != length:
11         return False
12     for al in capWord:
13         if acceptAlpha.count(al) == 0:
14             return False
15         acceptAlpha.remove(al)
16     return True
17 
18 wordList = ["C:\Users\xxx\Downloads\ispell-enwl-3.1.20\english.%d" % i for i in range(0, 4)]
19 for wFile in wordList:
20     xwordFile = file(wFile)
21     oneWord = xwordFile.readline()
22     oneWord = oneWord.strip()
23     while len(oneWord) != 0:
24         if isQualifyWord(oneWord, 6, "MMMUUCDEIGL"):
25             print oneWord
26         oneWord = xwordFile.readline()
27         oneWord = oneWord.strip()

 

这个程序运行的基础是常见英文单词文本库,从一个叫做Kevin Atkinson的热心网友处下载(sourceforge,需FQ)

不得不说,Python用于处理文本以及干这类脏活实在太方便了。

posted on 2013-03-26 21:57 闻过则喜 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/grepall/archive/2013/03/26/2983502.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值