序文
私がプログラミングを初めて学ぶのは、高校での情報技術の授業でした。私の先生は、「ロゴ」と呼ばれるプログラミング言語を学ぶことを教えてくれました。この言語を使用すると、架空の「カメ」を制御して、ペンをその尾に結び付けて描画できます。
その後、多くの例を得て、毎日一定の数の演習を完了している限り、自由に実験して好きなことをすることができます。
次に、多くの例を示し、自由に実験的な演習を行いましょう。基本的にコードをコピーして盲目的に調整するため、最終的にどれだけ学んだかはわかりませんが、ロゴを使用して楽しい時間を過ごしていることを覚えています。
たいていの場合、コードを盲目的にコピーして調整するため、最終的にどれだけ学ぶかはわかりませんが、ロゴを使って楽しい時間を過ごしたことを覚えています。
例1:線を引く
turtleモジュールでできる最も簡単なことの1つは、線を引くことです。turtleモジュールを使用するには、常に4つの手順を実行する必要があります。
1.タートルモジュールをインポートします。このステップをスキップすると、制御するカメはなくなります。
2.制御するカメを作成します。
3.何かを描きます。何かしなさい。これにより、画面も自動的に作成されます。
4. turtle.done()を実行します。(idc.done()ではありません!)
turtle.done()はプログラムを一時停止することに注意してください。続行するにはウィンドウを閉じる必要があります。
コード
タートルのインポート#タートルパッケージとすべての内部メンバーのインポート
turtle.setup(600,400、)#ウィンドウサイズは600×400
idc = turtle.Turtle()#新しいタートルを作成します。これを「idc」と呼びます
idc.forward(200)#idcに面する方向に200ピクセル移動
turtle.done()#完了
出力は次のとおりです。
例2:正方形を描画します。
カメを回転させて、より興味深いグラフィックを描くことができます。
コード
import turtle
turtle.setup(600,400、)#ウィンドウサイズは600×400です
idc = turtle.Turtle()
idc.forward(100)
idc.right(90)#時計回りに90度回転
idc.forward(100)
idc.right(90)
idc.forward(100)
idc.right(90)
idc.forward(100)
idc.right(90)
turtle.done()
これまでに学習した2つのタートルコマンドは、タートルをxピクセル前方に移動するフォワード(x)と、時計回りにd度回転する右(d)です。
他の2つのキーコマンドは戻る(x)と左(d)で、前者は亀を後方に移動し、後者は亀を反時計回りにd度回転します。自分でテストを練習してください。
例3:正方形を描く(ループを使用)
退屈なことを知っていますか?実際、同じコード行を4回続けてコピーして貼り付ける必要があります。Pythonにこのコードを繰り返させることができたら、すばらしいと思いませんか?
コード:
import turtle
turtle.setup(600,400、)#ウィンドウサイズは600×400です
idc = turtle.Turtle()
#繰り返したいのは、4回ループすることです。
#*インデント* 4つのスペース。
for iの範囲(4):
idc.forward(100)
idc.right(90)
#これはインデントされていないので、繰り返しません。
turtle.done()
出力ダイアグラムは例2と同じです。
補足
次のコードを実行すると、どうなると思いますか?
範囲内のLinuxの場合(10):
print(linux)
print(linux * 2)
例4:星を描く
コード:
import turtle
turtle.setup(600,400、)#ウィンドウサイズは600×400です
idc = turtle.Turtle()
for i for range(200):
idc.forward(200)
idc.right(144)
turtle.done()
効果のグラフは次のとおりです。
補足
「144」を選ぶ理由 これは重要ですか?他の番号を変更しようとするとどうなりますか?
例5:スパイラルスター
コード:
タートルのインポート
turtle.setup(600,500、)
idc = turtle.Turtle()
for i for range(30):
idc.forward(i * 15)
idc.right(144)
turtle.done()
効果のグラフは次のとおりです。
補足
カメを前に動かす量が毎回異なることに注意してください。15を掛けないで、自分で掛けるとどうなりますか?代わりにidc.forward(i * i)を実行するように変更するとどうなりますか?
例6:線の色を変更する
コード:
タートルのインポート
turtle.setup(600,400、)
効果のグラフは次のとおりです。
補足
異なる色が必要な場合はどうなりますか?常にturtleモジュールがサポートできる色を推測することができますが、より正確にしたい場合は、代わりにこのカラーセレクターを使用できます。
画面の上部に、ウェブサイトには「#」マークと、その色を表す一連の6文字または数字が表示されます。タートルモジュールは、この形式の色を受け入れます。
カメの輸入
これらの6文字を含める前に、必ず#文字を含めるようにしてください。
例6:変数
コンピュータとプログラミングに関する強力な機能の1つは、仕事をこなすことができ、人々が飽きることです。たとえば、六角形(6辺の形状)を描画したい場合はどうでしょうか。毎回何度回転させるべきですか?12面のシェイプが必要な場合はどうでしょうか。
毎回数値を計算する代わりに、変数を定義して、Pythonに数式を使用させて調べることができます。
ここでは、辺の数を6に、辺の長さを120に設定します。変数を変更するとどうなりますか?
コード:
タートルのインポート
turtle.setup(600,500、)
polygon = turtle.Turtle()
num_sides = 6
side_length = 120
角度= 360.0 / num_sides
for i in range(num_sides):
polygon.forward(side_length)
polygon.right(angle)
turtle.done()
効果のグラフは次のとおりです。
補足
多くの初心者を混乱させるのは=記号です。数学では、A = Bである限り、AとBは同じ数学である必要があります。=は「等しい」という意味です。
ただし、=はプログラミングでは多少異なります。A = Bと表示されている場合、AがBに等しく設定されていることを意味します。プログラミングでは、=は「割り当て」を意味します。
したがって、次のコードが表示された場合:
...出力は5と11になります。常に右側のコンテンツをコンピューター処理し、左側の変数をこの値に変更します。
例7:ジャンプして速度を変更する
turtle.setposition(x、y)は、タートルの位置を挿入した座標に設定します。(0,0)は画面の中央にあり、タートルが最初に開始します。カメのペンが上にあることを確認する必要があることに注意してください。そうしないと、カメのペンが線を引きます。
turtle.speed(number)を実行すると、タートルの速度を変更できます。速度を10に設定すると、カメは非常に速く動きます。速度を1に設定すると、タートルは非常に遅くなります(これは、複雑なものを描画する方法を理解するのに役立ちます)。
速度は0未満または10を超えることはできません。
コード:
タートルのインポート
turtle.screensize(600,400、 "green")
効果のグラフは次のとおりです。