介绍
游戏介绍
平时自己学python,大家肯定很是无聊,推荐一个很早之前的网页版python闯关游戏——Python Challenge,虽然说这个网站很早了,但是很有意思,你会发现这些游戏一点也不简单,基本都需要通过编程来解决……
有意思的是,这是个解谜游戏,所以需要你细心去发现线索,破解谜底,并且考察的知识量也不是很小,很有意思。
游戏链接:http://www.pythonchallenge.com/
界面是这样的:
点击图中Click here to get challenged
开始挑战。
全解(持续更新)
Python challenge 全解(持续更新中,建议收藏)
重点必看
第8关我们得到了一个账号和密码:huge
.file
,这个需要牢牢记住,因为后面的关卡,基本都需要登录。
第16关
查看源代码:
<html>
<head>
<title>let me get this straight</title>
<link rel="stylesheet" type="text/css" href="../style.css">
</head>
<body>
<br><center>
<img src="mozart.gif"><br>
</body>
</html>
啥也没有。。
看来这一关就只能是在图片和标题中寻找线索了。。。
标题的意思一般是 让我弄清楚 。但是在这里,我们应该是从字面意思来理解,就是把什么东西拉直的意思,图片里面可以拉直的也许就是这些颜色不同的像素了。
from PIL import Image
img = Image.open("mozart.gif")
#获得像素点
imgs=[im.getpixel((x, 0)) for x in range(im.size[0])]
for i in range(len(imgs)):
print(line[i],end=" ")
我们先看一下第一行的像素,
……………… 59 60 60 249 195 195 195 195 195 252 88 48……………………
大家可以看到这里面出现了5个195,这就是那个显眼的紫色部分,事实上,每一行都有一段,都是5个像素的长度。。其实就是把紫色都拉到左边来,紫色左边的移动到右边去:
img = Image.open("mozart.gif")
for y in range(img.size[1]):
#获得所有像素点
imgs=[img.getpixel((x, y)) for x in range(img.size[0])]
b=imgs.index(195)
imgs=imgs[b:]+imgs[:b]
#重新排列所有像素点
[img.putpixel((x, y),imgs[x]) for x in range(len(imgs))]
img.show()
得到答案:
得到了单词romance
,替换得到了正确的url:
结果链接
http://www.pythonchallenge.com/pc/return/romance.html
第17关预告
图片里面能看见什么熟悉的??
最后,大家不妨关注一下可怜的我。。
转载:https://blog.csdn.net/weixin_46283214/article/details/105491472
查看评论