3. タートルが図形を描く
紙と鉛筆で正方形を描くときを想像して下さい。さて、紙の上に描くには。。。
まず1本線を書きます。
次に、角度を90度向きを変えて、2本目の線を続けて書きます。
この作業を後2回くり返すと、正方形の完成です。
この作業をプログラムでもやってみましょう。タートルモジュールを使用すると亀が図形を描いてくれます。この下の2行をプログラムに追加してタートルを表示して下さい。
tina = turtle.Turtle()
tina.shape('turtle')
亀の変数名をtina と命名しました!
forward()とleft()の関数
亀のtinaに1本線を書いてもらいます。forward()関数のパラーメータの中の変数名をpixel にし、プレーヤーが入力した数値分、進むようにします。
次に、tinaの角度を90度、左に方向を変えるため left(90) 関数を使用します。
この作業を4回くり返すと、正方形の完成です。
コードは以下のようになります。
tina.forward(pixel)
tina.left(90)
tina.forward(pixel)
tina.left(90)
tina.forward(pixel)
tina.left(90)
tina.forward(pixel)
tina.left(90)
tinaが正方形を描くか試して下さいね。
Pythonでのループ
for ループ
ループは、同じ命令のセットを何度も何度も書かなければならないという問題を解決します。そして、コードを実行する回数を指定できます。
for ループを4回イテレートすると正方形が描けます!でも、辺の数は、プレーヤーが入力し常に変わります。そのため、forループのパラーメータの中にsideと書いて、side分をくり返すようにします。やってみましょう。
- ループは常に
for
というキーワードで始まります。ループの本体は右にインデントされています。 - キーワード
in
イテレータは、値を通過する構造です。 - 組み込み
range()
関数を使用して整数のシーケンスを作成できます。このシーケンスは、ループを介してくり返すことができます。
for v in range(side):
tina.forward(pixel)
tina.left(90)