PythonChallenge 挑战之路 Level-30

本文介绍了一种通过解析CSV文件中的浮点数来生成图片的方法,并进一步从图片中解码隐藏信息的过程。通过编程手段,将7367个浮点数组合成53*139像素的图像,旋转翻转后揭示隐藏的文本消息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先下载一个.csv的文件,这是一个包含7367个浮点数的文件,然后就需要利用这些数构成一张图片,而7367=53*139,所以图片为53*139的,利用图片上的信息就可以再一步解码获得谜底了。代码如下:

import Image,re
f = open(r'F:\Python challenge\yankeedoodle.csv','r').read()

data = re.findall(r'(0.\d*)',f)
new = Image.new('F',(53,139))
new.putdata(map(float,data))
new = new.transpose(Image.ROTATE_90)
new = new.transpose(Image.FLIP_TOP_BOTTOM)
new.save(r'F:\Python challenge\out30.tiff')

s = [chr(int(data[i][5]+data[i+1][5]+data[i+2][6])) for i in range(0,len(data)-2,3)]
print ''.join(s)

图片为:


最后的文本为:

So, you found the hidden message.
There is lots of room here for a long message, but we only need very little space to say "look at grandpa", so the rest is just garbage. 

那么谜底就是grandpa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值