python 12关挑战,看看你能过几关

给娃讲编程:用ICode游戏闯关学Python列表,第2级这10关怎么过? 本文详细解析了如何通过ICode游戏闯关帮助孩子学习Python列表操作,特别针对第2级的10个关卡提供了通关策略和教学技巧。文章结合ICode平台的游戏化设计,展示了如何将抽象的编程概念如索引、遍历等转化为孩子易于理解的形式,同时分享了亲子互动教学的有效方法。 阅读详情

第0关

计算2的38次方

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:961562169

>>> 2**38
274877906944
>>> pow(2,38)
274877906944

第1关

实现字母移位编解码

import string, sys
a = string.ascii_lowercase
b = a[2:] + a[:2]
s = sys.stdin.read()
print s.translate(string.maketrans(a, b))

第2关

从一大段字符串中寻找只出现过一次的字符,并按原顺序输出。

import urllib, re, sys
def get_file(fname):
    url = 'http://www.pythonchallenge.com/pc/def/' + fname
    return urllib.urlopen(url).read()
dat = get_file('ocr.html')
txt = re.findall(r'<!--(.*?)-->', dat, re.S)[-1]
d = {}
for i in txt:
    d[i] = d.get(i, 0) + 1
for i in txt:
    if d[i] == 1:
        sys.stdout.write(i)

第3关

从一大段字符中找出小写字母,要求它的左右分别恰好有三个大写字母,按原顺序输出。

import urllib, re, sys
def get_file(fname):
    url = 'http://www.pythonchallenge.com/pc/def/' + fname
    return urllib.urlopen(url).read()
dat = get_file('equality.html')
txt = re.findall(r'<!--(.*?)-->', dat, re.S)[-1]
ans = re.findall(r'[^A-Z][A-Z]{3}([a-z])[A-Z]{3}[^A-Z]', txt, re.S)
print ''.join(ans)

第4关

有一组类似链表结构的网页,每个页面给出了下一个页面的地址参数,遍历整个链找到最后的结点。

import urllib, re
def get_file(fname):
    url = 'http://www.pythonchallenge.com/pc/def/' + fname
    return urllib.urlopen(url).read()
pre = 'linkedlist.php?nothing='
idx = '12345'
while True:
    dat = get_file(pre + idx)
    print dat
    ans = re.search(r'\d+', dat)
    if ans is None: break
    idx = ans.group(0)

第5关

使用pickle模块加载序列化后的内容,然后打印出来。

import urllib, pickle
def get_file(fname):
    url = 'http://www.pythonchallenge.com/pc/def/' + fname
    return urllib.urlopen(url).read()
dat = get_file('banner.p')
ans = pickle.loads(dat)
print '\n'.join([''.join([j[0] * j[1] for j in i]) for i in ans])

第6关

与第4关类似,但这次结点信息存在于一个zip文件中,需要从头到尾拼接各个文件的注释内容。

import urllib, StringIO, zipfile, re
def get_zip(fname):
    url = 'http://www.pythonchallenge.com/pc/def/' + fname
    return zipfile.ZipFile(StringIO.StringIO(urllib.urlopen(url).read()))
z = get_zip('channel.zip')
idx = 'readme'
cmt = ''
while True:
    cmt += z.getinfo(idx + '.txt').comment
    txt = z.read(idx + '.txt')
    ret = re.search(r'\d{2,}', txt)
    if ret is None: break
    idx = ret.group(0)
print cmt

第7关

在一张图片的中间取一部分像素点,将其灰度值转换成对应的Ascii字符。

>>> import urllib, StringIO
>>> from PIL import Image
>>> src = urllib.urlopen('http://www.pythonchallenge.com/pc/def/oxygen.png').read()
>>> img = Image.open(StringIO.StringIO(src))
>>> w, h = img.size
>>> ''.join([chr(img.getpixel((i, h/2))[0]) for i in xrange(0, w, 7)])
'smart guy, you made it. the next level is [105, 110, 116, 101, 103, 114, 105, 116, 121]pe_'
>>> ''.join(map(chr, [105, 110, 116, 101, 103, 114, 105, 116, 121]))
'integrity'

第8关

给出经bzip压缩过的用户名和密码内容,将其还原。

>>> import bz2
>>> uid='BZh91AY&SYA\xaf\x82\r\x00\x00\x01\x01\x80\x02\xc0\x02\x00 \x00!\x9ah3M\x07<]\xc9\x14\xe1BA\x06\xbe\x084'
>>> pwd='BZh91AY&SY\x94$|\x0e\x00\x00\x00\x81\x00\x03$ \x00!\x9ah3M\x13<]\xc9\x14\xe1BBP\x91\xf08'
>>> bz2.BZ2Decompressor().decompress(uid)
'huge'
>>> bz2.BZ2Decompressor().decompress(pwd)
'file'

第9关

给出一个整数列表代表一条线,其中第i点的x,y坐标下标分别为2i, 2i+1,根据坐标点画出该图。

>>> from PIL import Image, ImageDraw
>>> l1 = [146,399, ...]
>>> l2 = [156,141, ...]
>>> img = Image.new('1', (500,500), 1)
>>> draw = ImageDraw.Draw(img)
>>> draw.line(zip(l1[0::2], l1[1::2]))
>>> draw.line(zip(l2[0::2], l2[1::2]))
>>> img.save('out.png')

第10关

求look-and-say sequence中第31项的长度。

a = ['1']
for i in xrange(30):
    t = ''
    n = 0
    x = ''
    for i in a[-1]:
        if n == 0:
            n = 1
            x = i
        elif i == x:
            n += 1
        else:
            t += str(n) + x
            n = 1
            x = i
    else:
        t += str(n) + x
    a.append(t)
print len(a[30])

第11关

给出一张图像,要求去掉x,y坐标和为奇数的像素点。

import urllib
import StringIO
from PIL import Image, ImageDraw
url = 'http://www.pythonchallenge.com/pc/return/cave.jpg'
dat = urllib.urlopen(url).read()
img = Image.open(StringIO.StringIO(dat))
w, h = img.size
for i in xrange(w):
    for j in xrange(h):
        if (i + j) % 2:
            img.putpixel((i,j), 0)
img.save('out.png')
SQL注入入门实战:sqli-labs前六关手工测试全解析 SQL注入是Web安全领域的核心漏洞之一,其原理在于攻击者通过构造恶意输入,改变应用程序与数据库交互的原始SQL语句逻辑,从而绕过认证、窃取或篡改数据。理解SQL注入的技术价值在于,它不仅是渗透测试的必备技能,更是理解Web应用与数据库交互机制、提升代码安全意识的绝佳切入点。在实战场景中,手工测试是掌握注入本质的关键,通过探测注入点、判断闭合方式、利用联合查询等步骤,可以系统性地获取数据库信息。本文以sqli-labs靶场前六关为例,详细解析基于错误的字符型注入和数字型注入的实战流程,并深入探讨布尔盲注的自 阅读详情

相关推荐

CTFshow文件上传漏洞实战:从JS绕过到条件竞争攻防解析

文件上传功能是Web应用中的常见模块,其安全性直接关系到服务器控制权。攻击者通过构造恶意文件,利用服务器解析逻辑缺陷或验证不严,可执行任意代码。其技术原理涉及HTTP协议、文件解析机制及服务器配置,在渗透测试中具有极高利用价值。本文聚焦CTFshow平台151-160关实战,系统拆解了从基础的前端JS验证绕过、服务端黑名单突破,到高级的图片马制作、条件竞争漏洞利用等核心手法。通过剖析MIME类型校验、.htaccess攻击及解析漏洞等典型场景,揭示了文件上传漏洞在真实攻防中的关键地位,为安全从业者提供了从攻

culi4814的博客 1040

python一些操作的笔记

python常用操作记录

weixin_42726887的博客 1801

Python爬虫实战:逆向分析与Selenium结合抓取淘宝商品评价数据

网络爬虫作为自动化数据采集的核心技术,其原理是通过模拟浏览器行为或直接请求API接口,从网页中提取结构化信息。在电商数据分析、市场研究等领域,高效获取大规模用户生成内容(UGC)具有重要价值。淘宝平台的商品评价数据是典型的UGC,蕴含丰富的用户反馈与市场洞察,但因其动态加载机制和复杂的反爬体系,直接采集面临挑战。本文聚焦于**动态加载**与**反爬虫机制**的应对,详细阐述了通过逆向分析定位Ajax接口、破解请求参数签名,以及使用Selenium进行浏览器自动化模拟的两套技术方案,并整合了数据解析、分页处理

weixin_33806859的博客 1668

LeetCode题解(0425):单词方块(Python)

题目:原题链接(困难) 标签:回溯算法、字典树 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(W×L2)O(W×L^2)O(W×L2) O(W×L2)O(W×L^2)O(W×L2) 264ms (97.67%) Ans 2 (Python) Ans 3 (Python) 解法一: def build_tree(words): tree = {} for i, word in enumerate(words):

长行 584

Upload-labs靶场通关指南:21种文件上传漏洞实战解析与防御

文件上传功能是Web应用中的常见模块,其安全性直接关系到服务器安危。攻击者通过构造恶意文件,利用服务器校验逻辑缺陷,可绕过前端JS校验、MIME类型检查、黑/白名单等防御,实现Webshell上传。其技术核心在于理解服务器对文件名处理、内容检测及解析逻辑的薄弱环节,例如利用%00截断、.htaccess文件攻击、条件竞争等手法。在实战中,这常与Web安全渗透测试、代码审计紧密关联,是红队评估中高风险漏洞之一。本文以经典靶场Upload-labs为蓝本,系统复现从基础绕过到高级逻辑漏洞的21种场景,涵盖黑名单

weixin_33744141的博客 406

H3C模拟器HCL防火墙路由模式主备配置实验

摘要:本文详细介绍了网络拓扑规划与设备配置方案。运营商仅提供一个接口地址,通过虚IP技术实现双防火墙高可用部署:主备防火墙分别配置10.20.10.1/29和10.20.10.2/29作为实际上联地址,共享10.10.10.2/24虚IP;下联配置172.168.10.0/24网段,核心交换机配置VLAN接口及192.168.10.1、192.168.20.1两个下联接口。文章包含运营商路由器、防火墙(HA配置、VVRP设置)和核心交换机的具体命令行配置步骤,并强调需进行主备切换验证。整个方案实现了单运营商

LQ的博客 1122

python关闭对象语法_Python基础语法学习笔记之风变第十二关类与对象

一、类与对象我们已经认识了两个重要的新概念:类和实例,也知道它们之间的关系类似于:群体和个体。群体里的每个个体都有着相同/相似的特征和行为。万事万物,皆为对象二、类的创建和调用类中创建的属性和方法可以被其所有的实例调用,而且,实例的数目在理论上是无限的。三、创建类的两个关键点1、特殊参数:selfself代表的是类的实例本身,方便数据的流转。第一点:只要在类中用def创建方法时,就必须把第一个参数...

weixin_39843677的博客 482

DSP28335 ADC模块实战:从寄存器配置到精准数据采集(附代码详解)

本文详细解析DSP28335的ADC模块配置与数据采集实战,涵盖寄存器设置、采样窗口优化、中断处理及代码实现。重点解决ADC精度问题,如采样窗口不足导致数据偏差,提供完整代码示例和调试技巧,助力工程师实现精准数据采集。

kkk56的博客 864

[Python Challenge通关]第12关 dealing evil

挑战地址,点我 分析 页面上的图片像有明显的行间隔,安装上一关的方法尝试分割,没有什么结果。 搜索了一下,图片的主题是分牌,当前图片的 url 是 http://www.pythonchallenge.com/pc/return/evil1.jpg, 图片上牌被分成了 5 份,那么看下: http://www.pythonchallenge.com/pc/return/evil2.jpg h...

蒋故事的专栏 590

rag综述——RAG技术发展流程、最新技术挑战与系统级优化

RAG技术发展综述:本文系统梳理了检索增强生成(RAG)技术的演进历程,从2017年开放域问答中的早期探索,到2020年正式提出RAG架构并与大模型深度融合,再到2025年向系统化、可信化和智能体化发展。当前RAG面临检索可靠性、系统效率和生成可信度三大核心挑战,解决方案包括领域自适应训练、强化语义编码、迭代检索策略等优化方向。未来RAG将向GraphRAG、SafeRAG等方向发展,从单纯性能优化转向构建可控、可审计的语言系统框架,成为高可靠大模型应用的基础设施。

lovehu6686的博客 1242

01-嵌入式入门-如何看原理图

最近由于找到的工作是偏于嵌入式方向,因此又重新开始学习已经丢弃两年的知识。新手学习知识感觉有一个通病:喜欢收集各种各样的视频、资料,网盘里收藏一大堆,但是却从没有打开看过,到头来还是个小白,只听说过几个概念,而实际却是不知所云,这就是所谓的"学习综合征"。而我也是其中的一员,最近痛定思痛,就准备根据一套资料沉下心学习下去,不再进入收集资料的大军。...

weixin_34010566的博客 4484

python挑战之level 24

连接:http://www.pythonchallenge.com/pc/hex/ambiguity.html 登陆密码;(butter,fly) ———————————————————————————————————————————————————————————— 这是一幅黄色的像素图 标题:from top to bottom 注释:无 从顶部到底部,要我们干啥?图片名字:m

jingza的博客 529

【RT-DETR实战】RT-DETR实战手记(200):端侧实时目标检测,下一步往哪儿走?

昨天深夜调一个模型部署,在树莓派4B上跑RT-DETR-nano,帧率死活卡在8FPS上不去。量化也做了,算子也优化了,内存对齐也检查了,可就是离实时检测的底线还差一截。盯着终端里跳动的数字,突然意识到——我们可能正在接近当前技术路径的瓶颈。端侧实时目标检测的下一个突破口,恐怕不在现有框架的修修补补里。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 186

转:一个古老的编程游戏:Python Challenge全通攻略

  Python Challenge是一个网页闯关游戏,通过一些提示找出下一关的网页地址。与众不同的是,它是专门为程序员设计的,因为大多数关卡都要编程来算哦!! 去年和同学一起玩的,他做了大半,我做了小半,作_弊了一些,33关全通,今天逛硬盘发现这个资料,拿出来晃晃。 非常非常非常非常好玩,强烈推荐编程的朋友都玩玩,不一定要会Python,我和我同学都不会,不过我们用C#一样能搞出来...

heyun51的专栏 338

PHP实现获取当地网络时间​(附完整源码)

PHP实现获取当地网络时间​(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 237

展锐平台wifi连接性问题解决方案

对于断开连接的问题,需要从kernel log中确认下,是上 层主动发起的断开(会下发disconnect的命令),还是CP侧上报的断开事件。同学,别退出呀,我可是全网最牛逼的 WIFI/BT/GPS/NFC分析博主,我写了上百篇文章,请点击下面了解本专栏,进入本博主主页看看再走呗,一定不会让你后悔的,记得一定要去看主页置顶文章哦。1、出现wifi连接正常,但无法上网问题,首先确认其他手机是否可以正常上网,排除网络自身问题;3 路由器配置问题,出现过一个案例,恢复出场设置问题就解决了,具体根因。

手机-手表蓝牙开发工程师的博客 2022

the python challenge_pythonchallenge 全部关卡提示

本文是pythonchallenge的33道谜题的全部提示。这是一个非常有趣的网站,强烈推荐有些编程基础的同学尝试。中间参考了各路高手的解答,但是没找到一个完整的中文版本的提示,费了一些波折。故特此纪录每一关的提示,留作纪念。我是用python来解这些谜题的,具体代码请看我的githubL0:纯热身,图片下面的英文提示,计算图中的数字的十进制x,url最后换成x.htmlL1:从图片上看,是凯撒密...

weixin_40007668的博客 417

一文读懂 SAP BTP Application Router 的 Resource Files:从 xs-app.json 到本地开发的默认设置

本文详解SAP BTP中Application Router的资源文件配置与本地开发实践。核心包括:xs-app.json定义路由规则与安全策略,package.json声明依赖与启动脚本,resources/存放静态资源,default-services.json和local-destinations.json用于本地模拟云服务。文章通过真实案例展示如何配置静态资源直出、反向代理后端服务,并强调本地开发时的注意事项与常见问题解决路径。关键配置均提供示例代码,帮助开发者快速实现业务应用的部署与联调。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 177

(转)一个古老的编程游戏:Python Challenge全通攻略

为什么80%的码农都做不了架构师?>>> ...

weixin_34162695的博客 175

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

pythonchallenge 解谜 Level 6

第六关地址 http://www.pythonchallenge.com/pc/def/channel.html 和前几关一样,首先看网页源码吧。反正不看也没办法。。。 1 <html><!-- <-- zip --><head> 2 <title>now there are pairs</title> ...

weixin_30335353的博客 134

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Python编程游戏网站实战指南:从零基础到本地环境配置

编程学习常从理解基础概念开始,如变量、循环和函数,这些构成了程序逻辑的核心。其原理在于通过结构化的指令控制计算机行为,实现自动化处理。掌握这些技术能提升问题解决能力与逻辑思维,在数据分析、自动化脚本和Web开发等场景中广泛应用。对于初学者,环境配置常是首要障碍,涉及Python安装、VSCode配置等步骤。本文聚焦python安装、vscode配置python环境等热词,探讨如何利用编程游戏网站绕过初始门槛,获得即时反馈,同时强调建立本地开发环境的重要性,以实现从游戏化练习到独立项目开发的平稳过渡。

weixin_30603633的博客 336

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Python自动化文件上传漏洞利用:从原理到CTF实战

文件上传漏洞是Web安全中的常见风险点,其核心原理在于服务器对用户上传文件的类型、内容及处理流程缺乏充分验证。攻击者通过构造恶意文件,可绕过前端校验、MIME类型检查、扩展名黑名单等防御机制,实现任意代码执行。在CTF竞赛与渗透测试中,自动化利用此类漏洞能显著提升效率。本文聚焦Python自动化脚本开发,结合requests、BeautifulSoup等库,实现智能载荷生成与自适应绕过。通过分析服务器响应动态调整攻击策略,该技术可应用于漏洞验证、安全评估等场景,为文件上传漏洞的深入利用提供工程化解决方案。

weixin_34082695的博客 687

从Python游戏化学习到工程实战:环境配置、项目思维与工程化实践全解析

Python作为一门广泛应用于数据分析、人工智能和Web开发的高级编程语言,其学习路径往往从基础语法和逻辑训练开始。游戏化学习平台通过即时反馈和心流设计,有效降低了初学者的入门门槛,帮助建立语法直觉和问题解决思维。然而,真正的编程能力构建需要跨越从“解谜题”到“做项目”的思维鸿沟,这涉及到本地开发环境的搭建与管理。理解Python解释器、包管理工具pip和虚拟环境的工作原理,是掌控代码运行“生态系统”的关键。在工程实践中,面对真实项目的不确定性,需要掌握错误处理与日志记录、模块化代码组织以及数据管道思维。最

weixin_30500473的博客 360

SQL 注入:Sqli-labs (1-65通关)、sqlmap、注入常用函数

SQL 注入:Sqli-labs (1-65通关)、sqlmap、注入常用函数

freeking101的博客 7610

文件上传漏洞攻防实战:从原理到upload-labs靶场通关

文件上传漏洞是Web安全领域的核心攻击面之一,其本质在于服务器对用户上传的文件缺乏足够的安全校验。攻击者通过构造恶意文件,利用客户端校验可被绕过、服务端黑名单不完善、文件解析特性等缺陷,实现Webshell上传,从而获取服务器控制权。在渗透测试与红队行动中,文件上传常作为突破边界、获取初始访问权限的关键路径。upload-labs靶场系统性地拆解了文件上传漏洞的各类防御机制与绕过技巧,涵盖前端JS绕过、MIME类型伪造、黑名单扩展名绕过、.htaccess攻击、条件竞争、解析漏洞及白名单结合文件包含等高级场

weixin_34127717的博客 379
上一篇: 利用 Python 爬虫实现快递物流信息查询
下一篇: python爬虫爬取大众点评店铺简介信息
Python_sn
博客等级 码龄6年 324粉丝 290原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值