Python開発コース
チャプター
>
レベル
辞書の使い方
辞書を使用したカスタム関数
目的
カスタム関数を使用して、フィールドをループしながら作物を植え、水やりをします。
野には植える必要のある木がいくつかあります。種が入った袋を手に取り、井戸で水を補給してください。辞書を使ったカスタム関数を用いてフィールドをループし、種を植えてから水をやります。
以下の木の種が辞書形式で得られる種の袋を手に入れてください: "orange : 3" , "pear : 4" , "apple : 3" , "peach : 2" . 井戸の横にある光るXマークの方へ歩き、collect() 関数を使って水を集めます。 例: player.collect("water") .
必要な材料をすべて集めたら、sow_field という名前のカスタム関数を作成し、種と水を使ってフィールドに作物を植え、灌漑してください。このカスタム関数は、tree、loops、direction の3つの引数を取ります。これらの引数を使い、カスタム関数は for ループを実行してフィールドに水をやります。
def sow_field(tree,loops,direction):
for x in range(loops):
if direction == "right":
player.move_forward(2)
player.turn_left()
player.plant(seeds,tree)
player.water()
player.turn_right()
player.move_forward()
if direction == "left":
player.move_forward()
player.turn_right()
player.plant(seeds,tree)
player.water()
player.turn_left()
player.move_forward(2)
最初の引数 tree は辞書で使用されるキーの名前であり、"orange"、"pear"、"apple"、および "peach" が指定されています。植える際は適切な名前を選んでください。
次の引数は loops で、これは関数がループする回数を決定します。これはフィールド内の各タイプの種の数と等しくなります。最後の引数は direction で、"left" または "right" のどちらかを指定し、関数をループする際にプレイヤーが進む方向を選んでください。
水を集めた後、マップの最上部に向かい、次のようにカスタム関数を使用します: sow_field("orange", 3, "right") .
すべての木の種に対してこれを行い、レベルを完成させてください。