谁说使用Python你就写不出混乱的代码?
本文是从 Penrose Tiling in Obfuscated Python这篇文章翻译而来
谁说使用Python你就写不出混乱的代码?
下面这段Python代码是用来生成一些彭罗斯铺砖图案的。不错,这是段可运行的Python代码:
当这段代码运行时,它会产生一个1000×1000的png格式的彭罗斯铺砖图案,里面包含有大概2212个具有3D浮雕效果的彭罗斯铺砖图。下图是这个图片的一部分:
这个脚本需要Pycairo代码库。它只能运行在 Python <= 2.7 版本上;Phthon 3并不支持。最初它是一个很正常的脚本,但经过我的努力,出现了神奇的视觉效果。
彭罗斯铺砖法是个很神奇的东西,它的图案呈不规则周期状分布——你移动角度后都找不到再次重合的图案。它由罗杰·彭罗斯(Sir Roger Penrose)经过无数次的五边形铺拼试验而成。
相对于C和Perl,Python很少被认为是一种容易产生混乱的代码的语言。似乎从来没有人挑战过这种观点,网上也很少找到混乱的Python代码的例子:你可以在Phthon官方问答区里和像 这里 和 这里 的一些页面中发现一些。这还有一个在PyCon 2011大会上的谈话。
我相信这是第一个能输出高分辨率图片的混乱的Python代码。如果你还知道一些其它的,请在评论中分享出来!
本文链接:http://news.cnblogs.com/n/114871/
相关新闻:
· Python 3.2 alpha 1发布(2010-08-03)
· Python的多点触摸用户界面库PyMT 0.5发布(2010-08-17)
· Python Web 框架-Django 1.2 发布(2010-05-18)
· Python的成功之路(2008-10-24)
· Python 插件杂谈 之 BeautifulSoup(2010-08-16)