PYTHON TURTLE: OVERVIEW
Tags: python, turtle, animation, programming
Published: 2023-04-18 14:27:06


**What is Python Turtle?**

![from Unsplash by Giorgia Doglioni](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4yiv51y78meetina5bgk.png)                 

Python Turtle is a library used to create simple graphics in Python. It is a great way to introduce programming to kids and adults alike, as it is easy to use and understand. Python Turtle also allows you to learn the basics of programming without having any prior knowledge or experience with coding.

**Getting Started with Python Turtle**
To get started with Python Turtle, you need to download and install Python. Then you can install the Turtle library by following these steps:

Open a new Python file in your favorite text editor (I use Sublime Text)
Type import turtle at the top of your file.
Create a Turtle object by typing t = Turtle() in your code window, then pressing Enter or Return on your keyboard. This will create an instance of our turtle named “t” that we can use to draw shapes and patterns!

**Using Turtle Commands**

**Turtle Motion Commands:**
1. forward(distance): moves the turtle forward by a specified distance
2. backward(distance) : moves the turtle backward by a specified distance
3. right(angle) : turns the turtle clockwise by a specified angle
4. left(angle) : turns the turtle counterclockwise by a specified angle
5. goto(x, y) : moves the turtle to the specified coordinates (x, y)
6. setx(x) : moves the turtle to the specified x-coordinate
7. sety(y) : moves the turtle to the specified y-coordinate
8. setheading(angle) : sets the turtle's heading to the specified angle
9. home() : moves the turtle to the origin (0, 0) and sets the turtle's heading to due east (0 degrees)

**Pen Control Commands:**
1. pendown() : puts the pen down, allowing the turtle to draw
2. pinupup() : lifts the pen up, preventing the turtle from drawing
3. pensize(width) : sets the width of the pen to the specified value
4. pencolor(color) : sets the color of the pen to the specified color
5. fillcolor(color) : sets the color used for filling in shapes
6. begin_fill() : starts filling in a shape
7. end_fill() : stops filling in a shape

**Window Control Commands:**
1. screensize(width, height) : sets the size of the turtle's screen to the specified values
2. title(title) : sets the title of the turtle's window
3. bgcolor(color) : sets the background color of the turtle's window
4. window_width() : returns the width of the turtle's window
5. window_height() : returns the height of the turtle's window

**Other Commands:**
1. clear() : clears the turtle's screen and resets the turtle to its original state
2. reset() : clears the turtle's screen and resets the turtle to its original state, but does not clear the drawing window
3. hideturtle() : hides the turtle from view
4. showturtle() : makes the turtle visible again
5. speed(speed) : sets the speed of the turtle (0 = fastest, 10 = slowest)
6. undo() : undoes the last action performed by the turtle
7. isdown() : returns True if the pen is down, False otherwise.

Examples:
```
import turtle
import random
def draw_star(size, color, x, y):
    turtle.penup()
    turtle.goto(x, y)
    turtle.pendown()
    turtle.color(color)
    turtle.begin_fill()
    for _ in range(5):
        turtle.forward(size)
        turtle.right(144)
    turtle.end_fill()
def animate_stars():
    turtle.clear()
    for _ in range(25):
        size = random.randint(10, 30)
        x = random.randint(-300, 300)
        y = random.randint(-300, 300)
        color = random.choice(["red", "blue", "green", "yellow", "white", "cyan", "magenta"])
        draw_star(size, color, x, y)
    turtle.ontimer(animate_stars, 1000)
turtle. Speed(0)
turtle.bgcolor("black")
turtle.hideturtle()
turtle.ontimer(animate_stars, 1000)
turtle.mainloop()

```

[Youtube]{https://www.youtube.com/watch?v=7dw-MYvF0}

**Conclusion**
Python Turtle is a great way to introduce programming to kids and adults alike. It’s easy to use, understand and a great way to learn the basics of programming.

Feel free to follow me on [Twitter](https://twitter.com/dev_today99), [GitHub](https://github.com/Developers-today), and [YouTube](https://www.youtube.com/@dev_today99).🙂