python challenge 第三关
来源:互联网 发布:书生软件 百度百科 编辑:程序博客网 时间:2024/04/27 16:42
网址:http://www.pythonchallenge.com/pc/def/equality.html
我之前不幸地被本题难住,原因很简单,"One small letter, surrounded by EXACTLY three big bodyguards on each of its sides.",我的理解如图所示:
也就是说,我以为上下左右分别被三个相同的字母围着,于是没有得到答案,只知道明白原句是指一个小写字母,两边正好都是三个大保镖(引申为三个大写字母,另外,each side我理解成上下左右四面。上网搜索后,发现实际问题为:求YXZaOPQ 中的 a。
可想而知,以自己的英语水平,面对使用了一小点修辞手法的语句就歇菜了。就像我前两天在做coursera上的Image and video processing第一周的课程时,看到 rotation matrix,本意是指那个特定的旋转矩阵,结果我理解成原矩阵旋转后得到的新矩阵,导致那题无从下手。惨惨惨!
搞清问题了,就好说了,我来默写代码吧……网上的代码已经足够简略,一时也想不到不用正则表达式的优美解法。
import reimport urllib2file = urllib2.urlopen("http://www.pythonchallenge.com/pc/def/equality.html")text = file.read()letters = re.findall(r'[^A-Z][A-Z]{3}([a-z])[A-Z]{3}[^A-Z]', text)print ''.join(letters)file.close()
还真别说,默写时,才发现自己的代码还是出了点小问题,因为只要三个大写字母,所以第四个必须限定成不是大写字母的字符才行。另外,又复习了下括号()这个在python 正则表达式里的作用,表示 提取,从符合整个模式的串中只提取括号的那部分显示出来。
- python challenge 第三关
- python challenge 第三关
- python challenge 第三关解法 http://www.pythonchallenge.com
- python challenge 第四关
- python challenge 第四关
- python challenge 第五关
- Python Challenge第二关
- Python Challenge:第八关
- Python Challenge 第九关
- Python Challenge:第三关:统计超长字符串中最少出现的字符
- Python Challenge 第10关(正则表达式)
- python challenge 7-12关 攻略
- python challenge 0-6关 攻略
- python challenge 13-16关 攻略
- Python Challenge题解 (更新到33关)
- 深度解密 python challenge第1关
- python challenge 第四关解法 http://www.pythonchallenge.com
- python challenge 第五关解法 http://www.pythonchallenge.com
- 关于ViewPager、ViewFilpper、ViewFlow三种实现水平向滑动方式的比较
- struts2访问web元素
- ALSA asound.conf
- semaphore与Mutex
- iOS真机调试常见错误及解决方案
- python challenge 第三关
- OpenCV_基于混合高斯模型GMM的运动目标检测
- C#值类型赋值与引用类型的赋值
- Linux下用find查找并复制指定文件到指定目录下
- Oracle常用EVENT参考
- navicat for mysql 显示中文乱码解决办法
- JNDI 介绍和Ldap简介
- gson使用在android使用例子
- c# 学习总结