Turtle は、グラフィック、画像、ゲームの作成に使用される Python ライブラリです。開発したのは、 ウォーリー・ファーゼイグ、シーモア・パーペット そして シンティナ・スロロモン これは、オリジナルの Logo プログラミング言語の一部でした。
ロゴ プログラミング言語は、簡単な方法で魅力的なグラフを画面に描画できるため、子供たちの間で人気がありました。これは画面上の小さなオブジェクトのようなもので、希望の位置に応じて移動できます。同様に、turtle ライブラリには、Python を柔軟に操作できる対話型機能が付属しています。
このチュートリアルでは、タートル ライブラリの基本概念、コンピュータ上でタートルをセットアップする方法、Python タートル ライブラリを使用したプログラミング、いくつかの重要なタートル コマンドを学び、Python タートル ライブラリを使用して短くても魅力的なデザインを開発します。
導入
Turtle は、絵や魅力的な形を描くことができる仮想キャンバスに似た、Python のプリインストールされたライブラリです。描画に使用できる画面上のペンを提供します。
の カメ 図書館は主に子供たちにプログラミングの世界を紹介することを目的として設計されています。 Turtle のライブラリの助けを借りて、新しいプログラマは、どのようにプログラミングを行うことができるかについてのアイデアを得ることができます。 パイソン 楽しくてインタラクティブな方法で。
ユニークな形、魅力的な絵、さまざまなゲームをデザインできるため、子供たちや経験豊富なプログラマーにとって有益です。ミニゲームやアニメーションのデザインも承ります。次のセクションでは、turtle ライブラリのさまざまな機能について学びます。
タートルを使い始める
Turtle ライブラリを使用する前に、プログラミングを行うために最も重要な 2 つのことを確認する必要があります。
タートルはライブラリに組み込まれているため、個別にインストールする必要はありません。ライブラリを Python 環境にインポートするだけです。
Python タートル ライブラリは、デザインや画像を作成するために必要なすべての重要なメソッドと関数で構成されています。次のコマンドを使用して Turtle ライブラリをインポートします。
import turtle
これで、すべてのメソッドと関数にアクセスできるようになりました。まず、各描画コマンドを実行する専用のウィンドウを作成する必要があります。変数を初期化することでこれを行うことができます。
s = turtle.getscreen()
上の画像のようになり、画面中央の小さな三角形がカメです。コンピュータ システムに画面が表示されない場合は、以下のコードを使用してください。
例 -
import turtle # Creating turtle screen s = turtle.getscreen() # To stop the screen to display turtle.mainloop()
出力:
キャンバスやタートルと同じ画面がペンの役割を果たします。タートルを移動して、希望の形状をデザインできます。タートルには、色、速度、サイズなどの変更可能な機能があります。特定の方向に移動することができ、特に指示しない限りその方向に移動します。
次のセクションでは、Python タートル ライブラリを使用したプログラミングを学習します。
タートルを使ったプログラミング
まず、カメを希望通りに全方向に動かす方法を学ぶ必要があります。カメのようにペンとその環境をカスタマイズできます。いくつかの特定のタスクを実行するためのいくつかのコマンドを学習しましょう。
カメは4方向に動かすことができます。
- フォワード
- 後方へ
- 左
- 右
カメの動き
カメは向いている方向に前後に移動できます。次の関数を見てみましょう。
例 - 3:
クエリセレクター
import turtle # Creating turtle screen t = turtle.Turtle() # To stop the screen to display t.forward(100) turtle.mainloop()
出力:
例 - 2:
import turtle # Creating turtle screen t = turtle.Turtle() # Move turtle in opposite direction t.backward(100) # To stop the screen to display turtle.mainloop()
出力:
例 - 3:
import turtle # Creating turtle screen t = turtle.Turtle() t.heading() # Move turtle in opposite direction t.right(25) t.heading() # To stop the screen to display turtle.mainloop()
出力:
例 -
import turtle # Creating turtle screen t = turtle.Turtle() t.heading() # Move turtle in left t.left(100) t.heading() # To stop the screen to display turtle.mainloop()
出力:
画面は最初は 4 つの象限に分割されています。タートルはプログラムの先頭に位置し、(0,0) として知られています。 家。
例 -
import turtle # Creating turtle screen t = turtle.Turtle() # Move turtle with coordinates t.goto(100, 80) # To stop the screen to display turtle.mainloop()
出力:
図形を描く
私たちはカメの動きについて話し合いました。ここからは実際の形を作る作業に移ります。まず、 ポリゴン なぜなら、それらはすべて特定の角度で接続された直線で構成されているからです。次の例を理解してみましょう。
例 -
t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100)
次の画像のようになります。
出力:
タートルを使用すると、長方形、三角形、正方形など、あらゆる形状を描くことができます。ただし、4 つの辺がすべて等しいわけではないため、長方形を描画する際は座標に注意する必要があります。長方形を描画したら、辺の数を増やして他の多角形を作成してみることもできます。
プリセット図形の描画
を描きたいとします。 丸 。正方形を描いたのと同じように描こうとすると非常に面倒で、その一つの形を描くだけでも多くの時間を費やさなければなりません。ありがたいことに、Python タートル ライブラリはこれに対する解決策を提供します。単一のコマンドを使用して円を描くことができます。
指定された半径で円が描画されます。範囲によって円のどの部分が描画されるかが決まります。範囲が指定されていないかまったく指定されていない場合は、円全体を描画します。次の例を理解してみましょう。
例 -
import turtle # Creating turtle screen t = turtle.Turtle() t.circle(50) turtle.mainloop()
出力:
また、塗りつぶし円とも呼ばれる点を描画することもできます。指定されたメソッドに従って塗りつぶされた円を描画します。
例 -
バイナリからbcdへ
import turtle # Creating turtle screen t = turtle.Turtle() t.dot(50) turtle.mainloop()
出力:
で渡した番号 ドット() 関数はドットの直径です。直径を変更することでドットのサイズを拡大または縮小できます。
これまでにカメの動きを学習し、さまざまな形をデザインしてきました。次のいくつかのセクションでは、タートルとその環境のカスタマイズについて学びます。
画面の色の変更
デフォルトでは、タートル画面は白い背景で開きます。ただし、次の関数を使用して画面の背景色を変更できます。
例 -
import turtle # Creating turtle screen t = turtle.Turtle() turtle.bgcolor('red') turtle.mainloop()
出力:
赤色を通過しました。また、任意の色に置き換えたり、16 進コードを使用して画面にさまざまなコードを使用したりすることもできます。
背景に画像を追加する
画面の背景色と同様に、次の関数を使用して背景画像を追加できます。
例 -
import turtle # Creating turtle turtle t = turtle.Turtle() turtle.bgpic() turtle.bgpic(r'C:UsersDEVANSH SHARMADownloadsperson.webp') turtle.bgpic() turtle.mainloop()
画像サイズの変更
画像サイズを変更するには、 画面サイズ() 関数。構文を以下に示します。
構文 -
turtle.screensize(canvwidth = None, canvheight = None, bg = None)
パラメータ - 3 つのパラメータを取ります。
次の例を理解してみましょう。
例 -
import turtle # Creating turtle turtle t = turtle.Turtle() turtle.screensize() turtle.screensize(1500,1000) turtle.screensize() turtle.mainloop()
出力:
画面タイトルを変更する
場合によっては、画面のタイトルを変更したいことがあります。デフォルトでは、 Python チュートリアルのグラフィックス 。次のように個人的なものにすることができます 「はじめてのタートルプログラム」 または 「Pythonで図形を描く」 。以下の関数を使用して画面のタイトルを変更できます。
turtle.Title('Your Title')
例を見てみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() turtle.title('My Turtle Program') turtle.mainloop()
出力:
画面タイトルはお好みに応じて変更できます。
ペンのサイズを変更する
要件に応じてタートルのサイズを拡大または縮小できます。場合によっては、ペンの太さも必要になります。次の例を使用してこれを行うことができます。
例 -
import turtle # Creating turtle turtle t = turtle.Turtle() t.pensize(4) t.forward(200) turtle.mainloop()
出力:
上の画像からわかるように、ペンは元のサイズの 4 倍です。さまざまなサイズの線を描くことができます。
ペンのカラーコントロール
デフォルトでは、新しい画面を開くと、タートルは黒色を選択し、黒のインクで描画します。この 2 つのことに応じて変更できます。
- 塗りつぶしの色であるタートルの色を変更できます。
- ペンの色を変更できます。これは基本的に輪郭またはインクの色の変更です。
必要に応じて、ペンの色とタートルの色の両方を変更することもできます。色の変化がはっきり見えるように、カメのサイズを大きくすることをお勧めします。次のコードを理解してみましょう。
例 -
import turtle # Creating turtle turtle t = turtle.Turtle() # Increase the turtle size t.shapesize(3,3,3) # fill the color t.fillcolor('blue') # Change the pen color t.pencolor('yellow') turtle.mainloop()
出力:
両方の色を変更するには、次の関数を入力します。
例 - 2:
import turtle # Creating turtle turtle t = turtle.Turtle() t.shapesize(3,3,3) # Chnage the color of both t.color('green', 'red') t.forward(100) turtle.mainloop()
出力:
説明:
上記のコードでは、最初の色はペンの色、2 番目の色は塗りつぶしの色です。
画像を埋めるカメ
色は画像や形を非常に魅力的なものにします。図形をさまざまな色で塗りつぶすことができます。次の例を理解して、図面に色を追加してみましょう。次の例を理解してみましょう。
例 -
import turtle # Creating turtle turtle t = turtle.Turtle() t.shapesize(3,3,3) t.begin_fill() t.fd(100) t.lt(120) t.fd(100) t.lt(120) t.fd(100) t.end_fill() turtle.mainloop()
出力:
説明:
プログラムを実行すると、上記の出力のように、最初に三角形が描画され、次にそれが黒一色で塗りつぶされます。私たちが使用したのは、 begin_fill() このメソッドは、塗りつぶされる閉じた形状を描画することを示します。次に、 .end_fill()、 これは、シェイプの作成が完了したことを示します。これで、色で塗りつぶすことができます。
カメの形を変える
デフォルトでは、タートルの形状は三角形です。ただし、タートルの形状を変更することは可能であり、このモジュールはタートルにさまざまな形状を提供します。次の例を理解してみましょう。
例 -
Javaがmysqlに接続する
import turtle # Creating turtle turtle t = turtle.Turtle() t.shape('turtle') # Change to arrow t.shape('arrow') # Chnage to circle t.shape('circle') turtle.mainloop()
出力:
ご要望に応じてタートルの形状を変更できます。これらの形状には、正方形、三角形、クラシック、タートル、矢印、円などがあります。の クラシック 亀の本来の姿です。
ペンの速度を変更する
タートルの速度は変更できます。通常、画面上を適度な速度で移動しますが、その速度を増減することができます。以下はタートルの速度を変更する方法です。
例 -
import turtle # Creating turtle t = turtle.Turtle() t.speed(3) t.forward(100) t.speed(7) t.forward(100) turtle.mainloop()
出力:
タートルの速度は 0 ~ 10 の範囲の整数値で変化します。引数は渡されません スピード() 関数を使用すると、現在の速度を返します。速度文字列は次のように速度値にマッピングされます。
0 | 最速 |
10 | 速い |
6 | 普通 |
3 | 遅い |
1 | 最も遅い |
注 - 速度が 0 に割り当てられている場合は、アニメーションは行われないことを意味します。
turtle.speed() turtle.speed('normal') turtle.speed() turtle.speed(9) turtle.speed()
一行でカスタマイズ
タートル内で複数の変更が必要だとします。たった 1 行で実行できます。以下にカメの特徴をいくつか挙げておきます。
- ペンの色は赤でなければなりません。
- 塗りつぶしの色はオレンジにする必要があります。
- ペンのサイズは 10 にする必要があります。
- ペンの速度は 7 にする必要があります。
- 背景色は青にする必要があります。
次の例を見てみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() t.pencolor('red') t.fillcolor('orange') t.pensize(10) t.speed(7) t.begin_fill() t.circle(75) turtle.bgcolor('blue') t.end_fill() turtle.mainloop()
出力:
一行だけ使用して、カメの特徴を変更しました。このコマンドについて学ぶには、次の場所を参照してください。 ライブラリの公式ドキュメント 。
ペンの方向を変更する
デフォルトでは、タートルは画面の右側を指します。場合によっては、タートルを画面自体の反対側に移動する必要があります。これを実現するには、 ペンアップ() 方法。の ペンダウン() 関数は描画を再開するために使用します。次の例を考えてみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() t.fd(100) t.rt(90) t.penup() t.fd(100) t.rt(90) t.pendown() t.fd(100) t.rt(90) t.penup() t.fd(100) t.pendown() turtle.mainloop()
出力:
上記の出力でわかるように、正方形ではなく 2 本の平行線が得られました。
画面をクリアする
タートルの設計コンセプトのほとんどをカバーしました。場合によっては、より多くのデザインを描画するために透明な画面が必要になることがあります。次の関数を使用してそれを行うことができます。
t.clear()
上記の方法により画面がクリアされ、さらにデザインを描画できるようになります。この機能は既存のデザインまたは形状を削除するだけであり、変数には変更を加えません。カメは同じ位置に留まります。
環境をリセットする
リセット機能を使用して、現在の動作をリセットすることもできます。それは、 砲塔の 設定を終了し、画面をクリアします。次の関数を使用するだけです。
t.reset
すべてのタスクが削除され、タートルはホームポジションに戻ります。タートルの色、サイズ、形状、その他の機能などのデフォルト設定が復元されます。
女優サイ・パラヴィ
私たちはタートルプログラミングの基本的な基礎を学びました。ここで、turtle ライブラリのいくつかの重要かつ高度な概念について説明します。
スタンプを残す
亀のスタンプを画面上に残すことができます。スタンプは亀の刻印に他なりません。次の例を理解してみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() t.stamp() t.fd(200) t.stamp() t.fd(100) turtle.mainloop()
出力:
を印刷すると、 スタンプ() メソッドを使用すると、タートルの位置またはスタンプ ID にすぎない番号が表示されます。次のコマンドを使用して、特定のスタンプを削除することもできます。
t.clearstamp(8) # 8 is a stamp location.
カメのクローン作成
時には、複数のカメを探してユニークな形をデザインすることもあります。現在動作しているタートルのクローンを環境に作成する機能が提供され、両方のタートルを画面上で移動できます。次の例を理解してみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() c = t.clone() t.color('blue') c.color('red') t.circle(20) c.circle(30) for i in range(40, 100, 10): c.circle(i) turtle.mainloop()
出力:
説明:
上記のコードでは、タートルのクローンを c 変数に作成し、circle 関数を呼び出しました。まず、青い円を描画し、次に for ループの条件に基づいて外側の円を描画します。
次のセクションでは、Python の条件ステートメントとループ ステートメントを使用して、タートルを使用したデザインを作成する方法について説明します。
ループと条件文を使用した Turtle プログラミング
ここまでで、turtle ライブラリの基本概念と高度な概念を学習しました。次のステップでは、Python のループと条件文を使用してこれらの概念を調べます。これらの概念を理解する際に、実践的なアプローチが得られます。次に進む前に、次の概念を覚えておく必要があります。
次の例を理解してみましょう。
for ループ
前の例では、コード内に複数の繰り返し行を記述しました。ここではforループを使った正方形のプログラムを作成する実装をしていきます。例えば -
例:
t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90) t.fd(100) t.rt(90)
for ループを使用して短くすることができます。以下のコードを実行します。
例
import turtle # Creating turtle t = turtle.Turtle() for i in range(4): t.fd(100) t.rt(90) turtle.mainloop()
出力:
説明
上記のコードでは、for ループはカウンタ 4 に到達するまでコードを繰り返しました。i は、0 から始まり 1 ずつ増加し続けるカウンタのようなものです。上記のループの実行を段階的に理解してみましょう。
- 最初の反復 (i = 0) では、タートルは 100 単位前方に移動し、右に 90 度回転します。
- 2 番目の反復 (i = 1) では、タートルは 100 単位前方に移動し、右に 90 度回転します。
- 3 番目の反復 (i = 2) では、タートルは 100 単位前方に移動し、右に 90 度回転します。
- 3 番目の反復 (i = 3) では、タートルは 100 単位前方に移動し、右に 90 度回転します。
反復が完了すると、タートルはループから飛び出します。
while ループ
条件が満たされるまでコードのブロックを実行するために使用されます。コードは、偽の条件が見つかると終了します。次の例を理解してみましょう。
例 -
import turtle # Creating turtle t = turtle.Turtle() n=10 while n <= 60: t.circle(n) n="n+10" turtle.mainloop() < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-24.webp" alt="Python Turtle Programming"> <p>As we can see in the output, we draw multiple circles using the while loop. Every time the loop executes the new circle will be larger than the previous one. The n is used as a counter where we specified the value of n increase in the each iteration. Let's understand the iteration of the loop.</p> <ul> <li>In the first iteration, the initial value of n is 10; it means the turtle draw the circle with the radius of 10 units.</li> <li>In the second iteration, the value of n is increased by 10 + 10 = 20; the turtle draws the circle with the radius of 20 units.</li> <li>In the second iteration, the value of n is increased by 20 + 10 = 30; the turtle draws the circle with the radius of 30 units.</li> <li>In the second iteration, the value of n is increased by 30 + 10 = 40; the turtle draws the circle with the radius of 30 units.</li> </ul> <h2>Conditional Statement</h2> <p>The conditional statement is used to check whether a given condition is true. If it is true, execute the corresponding lines of code. Let's understand the following example.</p> <p> <strong>Example</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() n = 40 if n<=50: t.circle(n) else: t.forward(n) t.backward(n-10) turtle.mainloop() < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-25.webp" alt="Python Turtle Programming"> <p> <strong>Explanation</strong> </p> <p>In the above program, we define the two outcomes based on user input. If the entered number is less of equal than the 50 means draw the circle otherwise else part. We gave the 40 as input so that if block got executed and drew the circle.</p> <p>Now let's move to see a few cool designs using the turtle library.</p> <h3>Attractive Designs using Python Turtle Library</h3> <p>We have learned basic and advance concepts of Python turtle library. We explain every possible feature of this library. By using its function, we can design games, unique shapes and many more things. Here, we mention a few designs using the turtle library.</p> <h3>Design -1 Circle Spiro graph</h3> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() turtle.bgcolor('black') turtle.pensize(2) turtle.speed(0) while (True): for i in range(6): for colors in ['red', 'blue', 'magenta', 'green', 'yellow', 'white']: turtle.color(colors) turtle.circle(100) turtle.left(10) turtle.hideturtle() turtle.mainloop() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-26.webp" alt="Python Turtle Programming"> <p>The turtle will move for the infinite time because we have used the infinite while loop. Copy the above code and see the magic.</p> <h3>Design - 2: Python Vibrate Circle</h3> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') t.pencolor('red') a = 0 b = 0 t.speed(0) t.penup() t.goto(0,200) t.pendown() while(True): t.forward(a) t.right(b) a+=3 b+=1 if b == 210: break t.hideturtle() turtle.done() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-27.webp" alt="Python Turtle Programming"> <p> <strong>Code</strong> </p> <pre> import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') turtle.pensize(2) # To design curve def curve(): for i in range(200): t.right(1) t.forward(1) t. speed(3) t.color('red', 'pink') t.begin_fill() t.left(140) t.forward(111.65) curve() t.left(120) curve() t.forward(111.65) t.end_fill() t.hideturtle() turtle.mainloop() </pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-turtle-programming/99/python-turtle-programming-28.webp" alt="Python Turtle Programming"> <p>In the above code, we define the curve function to create curve to screen. When it takes the complete heart shape, the color will fill automatically. Copy the above code and run, you can also modify it by adding more designs.</p> <hr></=50:></pre></=>
出力:
無限の while ループを使用しているため、タートルは無限の時間移動します。上記のコードをコピーして、その魔法を見てみましょう。
デザイン - 2: Python バイブレーション サークル
コード
import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') t.pencolor('red') a = 0 b = 0 t.speed(0) t.penup() t.goto(0,200) t.pendown() while(True): t.forward(a) t.right(b) a+=3 b+=1 if b == 210: break t.hideturtle() turtle.done()
出力:
コード
import turtle # Creating turtle t = turtle.Turtle() s = turtle.Screen() s.bgcolor('black') turtle.pensize(2) # To design curve def curve(): for i in range(200): t.right(1) t.forward(1) t. speed(3) t.color('red', 'pink') t.begin_fill() t.left(140) t.forward(111.65) curve() t.left(120) curve() t.forward(111.65) t.end_fill() t.hideturtle() turtle.mainloop()
出力:
上記のコードでは、画面へのカーブを作成するカーブ関数を定義しています。完全なハートの形になると、色が自動的に塗りつぶされます。上記のコードをコピーして実行します。デザインを追加して変更することもできます。
=50:>=>