您的位置:首页 > 编程语言 > Python开发

PythonChallenge Mission 16

2016-03-17 00:29 411 查看
打开第16关,看到了一张像老式电视机信号不好时的雪花图。

并不知道什么含义后打开源代码,发现是张gif图,猜测后面隐层了几张图片,于是上代码:

from PIL import  Image

im = Image.open("mozart.gif")
magic = chr(195)
im.seek(1)
可是fail了,这仅仅是一张图片的gif,窝陷入了困境。。。

再次审视那张雪花图,发现似乎每行都有一部分粉红色的部分,又联想到title——let me get this straight。

“get sth straight” 本来是“搞明白”的意思,可在这里感觉一语双关,又有把“粉红色”拉直对齐的意思——即把每一行的粉红色部分对齐,看输出图像

经过查阅,图中粉红色部分是chr(195),于是上代码:

from PIL import  Image

im = Image.open("mozart.gif")
magic = chr(195)
im.seek(1)

for y in range(im.size[1]):
box = 0, y, im.size[0], y+1
row = im.crop(box)
bytes = row.tostring()
i = bytes.index(magic)
print bytes[i]
bytes = bytes[i:] + bytes[:i]#shift pink to the right border
row.fromstring(bytes)
im.paste(row, box)
im.show()

此时看到了这么一张图:



将网址替换为romancehttp://www.pythonchallenge.com/pc/return/romance.html,进入下一关!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python PythonChallenge