【原创】pythonchalleng——第11题
第十一题的网址:http://www.pythonchallenge.com/pc/return/5808.html,下面是该题目的截图,特此留念。

- 页面标题:odd even
- 页面图片:看起来好像是两张图片的合成。 根据上面的“奇偶”提示,应该是利用Image模块操作该图片,将两张图片分离。 最初的思路是横纵坐标都为奇数的点组成一张图片;横纵坐标都为偶数的点组成一张图片。因为以前写过操作图片的例子(如果大家忘了,可以参考 《【原创】pythonchalleng——第9题》),所以代码写起来比较轻松。但是得到的图片却不是像我想象的那样,根本没有任何提示信息。
没有办法,于是上网搜索思路,发现原先的大体思路还是正确的,但是处理像素的时候有错误,应该是从左上角开始,第奇数个点保存在一张图片中;第偶数个点保存在一张图片中。下面给出自己写的代码。
'''
Created on 2011-9-2
@author: hengha
'''
import Imagedef dealOddandEven(path):
img=Image.open(path, 'r')
width=img.size[0]
height=img.size[1]
odd = even = Image.new(img.mode, (width/2, height/2))for i in range(width):
for j in range(height):
pixel=img.getpixel((i,j))
if i%2==0 and j%2==0:even.putpixel((i/2,j/2),pixel)
elif i%2==1 and j%2==1:
even.putpixel(((i-1)/2,(j-1)/2), pixel)
elif i%2==1 and j%2==0:
odd.putpixel(((i-1)/2,j/2), pixel)
elif i%2==0 and j%2==1:
odd.putpixel((i/2,(j-1)/2), pixel)
odd.save('odd.jpg')even.save('even.jpg')if __name__ == '__main__':
dealOddandEven('cave.jpg')不知道是不是写的代码有问题,最后得到的两张图片居然一样……,效果如下:
从图片中我们可以看到evil字样,换到url中,看看效果。新的网址为 http://www.pythonchallenge.com/pc/return/evil.html,可以顺利进入下一题,第12题。

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
