PythonChallenge 挑战之路 Level-3

第三关的谜面是:

One small letter, surrounded by EXACTLY three big bodyguards on each of its sides.

大概意思就是每一个小写字母的两边都有且只有3个大写字母,也就是如oXXXaXXXo的形式中,a就是需要找出的小写字母。


同样从网页源码里找到目标文本,代码如下:

import urllib
import re

text = urllib.urlopen('http://www.pythonchallenge.com/pc/def/equality.html').read().split('<!--')[-1].replace('-->', '')
print "".join(re.findall('[^A-Z][A-Z]{3}([a-z])[A-Z]{3}[^A-Z]', text))
结果为:

linkedlist

替换URL后提示使用linkedlist.php,顺利进入下一关:)


=================分割线===================

这个方法挺有意思:

>>> import string
>>> code = """
...            <copy and paste>
...                             """.replace("\n", "")
>>> word = ""
>>> for i in range(len(code) - 8):
...     if [c for c in code[i:i+9] if c in string.lowercase] == [code[i], code[i+4], code[i+8]]:
...         word += code[i+4]
...
>>> word
'linkedlist'


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值