The turtle was originally popularized by the Logo programming language where it refers to a little robot with a retractable pen that moves along the floor and can draw pictures as it moves. In the Python turtle module instead of a robot moving over a sheet of paper you have a cursor/icon that draws pictures on the screen. It is an excellent way for kids to learn Python programming and express their creativity! (The Kodeclik Python 102 course introduces you to this module.)
Once you have mastered turtle, tkinter is a useful Python library for creating your own GUIs (graphical user interfaces). You can create buttons and widgets and make them respond in specific ways when pressed or clicked. You can program a very elaborate software application with menus, choices, and options to showcase your work!
pygame is a framework to create your own games in Python. It allows you to create the graphical display, define events that will happen in your games, the programming logic to be triggered in response to these events. The module also has facilities to control the keyboard, mouse, external devices and also allows you to add timers and other complexity to your games.
nltk (Natural Language Toolkit) is a module in python that gives you rich capabiliies to process text, such as emails, documents, and web pages. For instance, if you wish to analyze the full Harry Potter book series and find interesting mentions of specific characters, nltk is the module for you! You can parse sentences into words, do semantic reasoning on the words, and also generate statistics on word occurrences.
For our middle schoolers, numpy is a module for processing large amounts of numerical data in arrays. For instance, if your drone is sending your computer data as it travels across your backyard, numpy arrays can help you track your drone’s motion and plot its trajectory on the screen. Numpy modules allow you to process arrays in sophisticated ways.
For our high schoolers, PyTorch is a machine learning library developed and released by Facebook’s AI group (FAIR) that has become the standard for AI programming such as robotics, chatbots, game playing, image and video processing. The framework is a must for implementing modern machine learning, especially deep learning algorithms!