这个Python龟图案是如何制作的?

2024-09-28 22:40:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我的朋友给我看了这个她用Python内置的Turtle module制作的惊人图像,并让我找出它是如何制作的。她给了我一个提示:图像是用10行代码生成的。在

10 Line Turtle Graphic

从我的问题你可能已经知道我没有线索了。我试了一大堆东西,但我不知道她是怎么用10行线画出一个填充圆圈的。我已经放弃了自己去想,我的朋友也不会告诉我,所以任何人只要能写出10行类似的图片,就能得到所有的荣誉:P

注意:我不确定这是否适用于StackOverflow,所以我很乐意询问其他地方(让我知道),但是这个是使用Python代码生成的,所以我想编程论坛上的人可能有经验来解决这个问题。在


Tags: 图像编程地方朋友图片stackoverflow论坛代码生成
3条回答

经过一些调整,我发现这个,我认为,非常接近图像,精确到10行。在

import turtle
bob = turtle.Turtle()
bob.speed(0)
for i in range(632):
    bob.forward(200)
    bob.right(1)
    bob.forward(100)
    bob.setpos(0,0)
    bob.left(1.57)
turtle.done()

first try

我不想再画一条线了

^{pr2}$

draw with lines 用三角形画:

import turtle
bob = turtle.Turtle()
bob.speed(0)
for i in range(720):
    bob.forward(50)
    bob.right(19)
    bob.forward(250)
    bob.setpos(0,0)
    bob.left(19.5)
turtle.done()

draw with triangles

以下是我相信你想要的:

Python 2.7.5 (default, Mar  9 2014, 22:15:05) 
[GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import turtle
>>> t = turtle.Pen()
>>> for i in range(1000):
...     t.forward(100)
...     t.backward(100)
...     t.left(79)
... 

输出:

enter image description here

这是你在问题中展示的一个小例子。 它的基本工作方式是,每次乌龟笔前进和后退,笔转动。这是重复多次,以创建那些“详细模式”。另外,你的朋友可能误导了你一点,因为这比十行要短得多。在

多亏了@citaret和@JerryJeremiah的建议,我能够在不到10行的时间内,将产生与图像相似的结果的东西放在一起:

from turtle import Turtle, Screen
mr_turtle = Turtle()
screen = Screen()
mr_turtle.speed(0)
for i in range(1800):
    mr_turtle.forward(300)
    mr_turtle.right(179.9)
screen.exitonclick()

谢谢各位!在

相关问题 更多 >