-2
非常に単純な「ツリー」を再帰的に描画するコードを記述しています。それは一連の関数といくつかの "set up"行ですが、もっと大きなプログラムに統合したいので、これをクラスの下に置いてツリーを描画したいと思います。このPythonタートルのコードをどのように小さくしてクラスにするのですか?
私の質問は、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()
あなたはクラスが実際に何であるか誤解しているようです。このコードは実際にはクラスとしては意味がありません。また、関数やクラスに入れることができるコードの量に制限はありません。 – user2357112
これは、クラスの目的に応じて異なります。オブジェクトやメソッドにはどのようなものがありますか?どの部分がパラメータ化されていますか?この「メイン」メソッドはクラスの一部ですか?初期化には何がありますか?呼び出し元プログラムはどの部分を処理しますか? – Prune