タートルグラフィックスで関数の引数について見てみよう


タートルグラフィックスで共通箇所を関数でまとめてみようで関数を使って共通箇所をまとめてみました。


from turtle import *


def forward_turn_left():
␣␣␣␣forward(100)
␣␣␣␣left(90)


shape("turtle")
forward_turn_left()
forward_turn_left()
forward_turn_left()
forward_turn_left()
done()

※␣は半角スペース1個分


関数実行時にカメの移動距離を決める事ができれば、関数の使い勝手を上げる事ができまして、この内容は引数という仕組みを使って実現します。


引数というのは、関数を作るに当たって必要な情報になりまして、

def forward_turn_left(distance):
␣␣␣␣forward(distance)
␣␣␣␣left(90)

※␣は半角スペース1個分

のように関数名の後のカッコ内に指定して、関数内であれば変数のように使う事ができます。


引数を2個以上設定したい場合は、

def forward_turn_left(distance, angle):
␣␣␣␣forward(distance)
␣␣␣␣left(angle)

※␣は半角スペース1個分

※angleは角度の意味

のようにカンマ区切りで使用します。


関数実行時に引数を使う時に値を渡すと言う事が多く、最初の例では、

from turtle import *


def forward_turn_left(distance):
␣␣␣␣forward(distance)
␣␣␣␣left(90)


shape("turtle")
forward_turn_left(100)
forward_turn_left(100)
forward_turn_left(100)
forward_turn_left(100)
done()

※␣は半角スペース1個分

のようにします。


2つ目の例は

from turtle import *


def forward_turn_left(distance, angle):
␣␣␣␣forward(distance)
␣␣␣␣left(angle)


shape("turtle")
forward_turn_left(100, 90)
forward_turn_left(100, 90)
forward_turn_left(100, 90)
forward_turn_left(100, 90)
done()

※␣は半角スペース1個分

になります。

マインクラフト用ビジュアルエディタを開発しています。
詳しくはinunosinsi/mcws_blockly - githubをご覧ください。