如何使这个python龟代码变小,使它成为一个类?

时间:2016-05-04 20:39:59

标签: python recursion turtle-graphics

我正在写一段代码,递归地绘制一个非常简单的“树”。它是一组函数以及一些“设置”行,但是,我想将它集成到一个更大的程序中,所以我想将它放在一个类下面然后调用它来绘制树。

我的问题是,对python不熟悉,我该怎么做?我读到了__init__self.(),但我的代码看起来非常模糊,而且不够紧凑,无法将其整齐地转换为类。

我应该如何首先减少代码行,使其全部适合函数?

import turtle as t
import random
def arbre(branche,t):
    if branche > 5:
        t.forward(branche)
        t.right(20)
        arbre(branche-15,t)
        t.left(40)
        arbre(branche-15,t)
        t.right(20)
        t.backward(branche)
def main():

    t.up()
    t.down()
    t.color("green")
    arbre(90,t)

for k in range(0,17):
    t.left(10)
    main()

t.right(80)
t.backward(50)
t.penup()
t.forward(25)
t.pendown()
t.right(60)
for k in range(0,11):
    t.left(10)
    main()

1 个答案:

答案 0 :(得分:0)

无论代码长度如何,您都可以编写课程,但您可以像这样减少代码:

import turtle as t
t.tracer(2,1) # pour accelerer le dessin
def arbre(branche,t):
    if branche > 5:
        t.forward(branche)
        t.right(20)
        arbre(branche-15,t)
        t.left(40)
        arbre(branche-15,t)
        t.right(20)
        t.backward(branche)

def main( n ):
    for k in range( n ):
        t.left(10)
        arbre(90,t)

t.color("green")
main(17)

t.right(80)
t.backward(50)
t.penup()
t.forward(25)
t.pendown()
t.right(60)

main(10)