资讯专栏INFORMATION COLUMN

Strategy for Python Challenge(02)

sydMobile / 1391人阅读

摘要:关卡地址点击前往这一关卡信息同样非常精简,只有短短的一句话,然后其他信息都没有什么用,真心用心良苦能说这个作者操蛋吗。不多说了,话语中提到了页面源码,那我们就看看源码有什么。

关卡地址:http://www.pythonchallenge.com/pc/def/ocr.html(点击前往)
这一关卡信息同样非常精简,只有短短的一句话,然后其他信息都没有什么用,真心用心良苦(能说这个作者操蛋吗)。不多说了,话语中提到了
页面源码,那我们就看看源码有什么。
整个源码都是html的一些标签没什么特别,知道有一段注释,应该答案就在这段信息里面了,但是观察了很久,没有什么头绪,来看看听雨轩点击前往的讲解,原来是在这段注释中寻找英文字母,好吧作者你赢了。
思路是:用 urllib.request.open 获取链接,用其read()函数读取 html 源码,再用正则提取注释的内容,在提取之后的内容寻找内容当中的字母就是我们的结果。
代码如下:

# -*- coding: UTF-8 -*-
import urllib.request
import re
import string

url = urllib.request.urlopen("http://www.pythonchallenge.com/pc/def/ocr.html")
page = url.read().decode("utf8") # 在Python中urlopen返回的response是byte类,需要转成string类
pattern = re.compile(r"") #  注释是在,这里使用?是想最短匹配,不过好像不加也没有影响
m = re.findall(pattern, page)
comment = m[1] # m[0]只是提示语,略去
out = list(filter(lambda x: x in string.ascii_letters, comment))
print("".join(out))

在Python3中filter函数不再直接返回列表,而是返回一个生成函数,需要再次list函数来处理。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/37527.html

相关文章

  • Strategy for Python Challenge(01)

    摘要:按照这种写法确实是可以解决问题了,但是毫无疑问,我的解法还是停留在语言的思维。所以要是在中找不到中类的函数,可以去类中去找或者内置函数。 最近学习Python,对语言方面已经很熟悉了,想做些练习,奈何生活中的问题以我现在的能力还不能好好的解决,故而转向Python的一些编程挑战练习,于是就有了下面这篇文章。文章在一定程度上(是大量)参考了听雨轩这个人的博客点击前往 挑战关卡地址:h...

    BlackMass 评论0 收藏0
  • Strategy for Python Challenge(03)

    摘要:关卡地址关卡是寻找两边都被三个大字母包围的小字母。代码可以参考上一小节的。最后一段输出代码,有很多括号,不可取,这主要是由于返回的序列,要用来转换成输出,或许有更好的方式来实现。 关卡地址:http://www.pythonchallenge.com/pc/def/equality.html 关卡是寻找两边都被三个大字母包围的小字母。 代码可以参考上一小节的。 代码如下: # -*-...

    miqt 评论0 收藏0
  • 人工智能/数据科学比赛汇总 2019.6

    摘要:内容来自,人工智能数据科学比赛整理平台。大赛面向全球高校在校生开放,旨在提升高校学生对数据分析与处理的算法研究与技术应用能力,探索大数据的核心科学与技术问题,尝试创新大数据技术,推动大数据的产学研用,本次大赛鼓励高校教师参与指导。 内容来自 DataSciComp,人工智能/数据科学比赛整理平台。Github:iphysresearch/DataSciComp 本项目由 ApacheC...

    gyl_coder 评论0 收藏0
  • Let's Encrypt 安装配置教程,免费的 SSL 证书

    摘要:官网安装安装非常简单直接克隆就可以了生成通配符证书期间需要根据提示设置记录用作你对判断你是否拥有域名使用权其中换成你的一级域名即可参数说明表示安装模式,有安装模式和验证模式两种类型的插件。 官网:https://letsencrypt.org/ 安装Lets Encrypt 安装非常简单直接克隆就可以了 git clone https://github.com/letsencrypt/...

    YanceyOfficial 评论0 收藏0
  • 对象池Pools优化

    摘要:为了防止内存抖动,所以可以使用对象池顺利解决问题。获取矩阵对象获取某个矩阵的归还矩阵对象注意事项如果对象池为空,则对象池自己会一个返回。如果对象池内有对象,则取一个已存在的返回。 目录介绍 01.什么是对象池 02.glide哪里用到对象池 03.多条件key缓存bitmap 3.1 多条件key创建 3.2 key值的复用 04.glide对象池总结 05.学以致用对象池...

    qc1iu 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<