PythonChallenge 挑战之路 Level-33(终结)

首先下载一张图片,用beer2.jpg时,提示用.png,然后就能下载一张图片了。网页源码里面有一段提示:

<!--
If you are blinded by the light,
remove its power, with its might.
Then from the ashes, fair and square,
another truth at you will glare.
-->

但还不是特别明白啥意思,搜了一下才知道,大致意思就是不短的去掉颜色最高的两组点,同时用剩下的点画图,画图时不是颜色不是最高的点一律作暗色对待。

import Image,math
img = Image.open('beer2.png')

f = img.getdata()
color = img.getcolors()
for i in range(65,-1,-2):
    s = []
    t = []
    for j in f:
        if j!=color[i][1] and j!=color[i-1][1]:
            s.append(j)
            t.append(0)
        else:
            if j==color[i][1]:
                t.append(1)
            else:
                t.append(0)
    f = s
    n = int(math.sqrt(len(t)))
    new = Image.new('1',(n,n))
    new.putdata(t)
    new.save('out33\%d.png' % ((i-1)/2))

最后一共生成33幅图片,每个图片中都包含一个字母,但有的字母周围有方框,这些字母组成为:gremlins也就是最终的答案。


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

这个相当古老的网页挑战游戏终于通关了,回想起来这个游戏的设计非常有意思,同时每一关都非常的精彩,即使通关了也值得再回过头把玩一番。我自己也从一个Python初学者开始稍稍入门了,一些常用的语法、模块也相对熟悉了不少,总体感觉收获颇丰:)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值