Modern Turtle Graphics, the descendants of LOGO in Python #Python #LOGO @ThePSF

Some of the most popular Adafruit blog posts last year, including the #1 post, revolved around LOGO, the original “turtle” graphics developed in the 1960’s for learning which was shipped on nearly all classic computing platforms since.

The popularity is due to the simplicity – if you can learn an etch-a-sketch, you can learn turtle graphics. Once you learn, then you can do things that etch-a-sketch only dreams of, more like spirograph!

Python does turtle

Python is the fastest growing computer language today, with school and hobbyist adoptions growing year over year.

Can Python do turtle graphics ala LOGO? Yes it can!

Here are some ways you can do turtle graphics in a Python environment:

The turtle Python library

The turtle library has been standard in Python for several versions. As you can see below, complex shapes can be made with just a few statements. And the source code is freely available.

Python turtle library - turtle star

GeeksforGeeks has a good turtle library reference and examples to explore and use.

The new open source Mu Python editor has turtle library support also, plotting to the on-screen plot device. Students have been making some cool art with this.

PythonTurtle

PythonTurtle is a learning environment for Python programming suitable for beginners and children, inspired by Logo

PythonTurtle strives to provide the lowest-threshold way to learn (or teach) software development in the Python programming language. Students command an interactive Python shell (similar to the IDLE development environment) and use Python functions to move a turtle displayed on the screen. An illustrated help screen introduces the student to the basics of Python programming while demonstrating how to move the turtle.

The program is available for Windows and Mac, open source MIT license, code on GitHub.

Turtletoy

Turtletoy allows you to write your own turtle code in-browser.

Turtletoy allows you to create generative art using a minimalistic javascript Turtle graphics API. You can only create black-and-white line drawings on a square canvas. By offering a very restrictive environment they not only hope to stimulate creativity, they also make sure that the turtles can (at least theoretically) be plotted using a simple plotter.

You can read the Turtle API reference first or directly start writing your own turtle here.

TurtleToy

Hopefully this article will get your started looking at turtle graphics and how you might use them with Python.

If you’re working in this area, please drop a note in the comments below.