Expand your basic knowledge of Python and use PyGame to create fast-paced video games with great graphics and sounds. This second edition shows how you can integrate electronic components with your games using the build-in general purpose input/output (GPIO) pins and some Python code to create two new games. You'll learn about object-oriented programming (OOP) as well as design patterns, such as model-view-controller (MVC) and finite-state machines (FSMs). Whether using Windows, macOS, Linux, or a Raspberry Pi, you can unleash the power of Python and PyGame to create great looking games. The book also includes complete code listings and explanations for "Bricks," "Snake," and "Invaders" 'three fully working games. These allow you to get started in making your own great games and then modify them or build your own exciting titles. The concepts are further explained using games such as "Copycat," where the player must concentrate and repeat the sequence of lights and sounds, and "Couch Quiz," in which PyGame and electronic components create a quiz game for 2 4 players. What You'll Learn Gain basic knowledge of Python and employ it for game development Study game projects you can use as templates, such as Bricks, Snake, and Invaders Work with user-defined functions, inheritance, composition, and aggregation Implement finite state machines Integrate your game with electronics using the GPIO pins Who This Book Is For Experienced coders or game developers new to Python, PyGame and Raspberry Pi would find this book helpful. It is also for beginners interested in getting into game development.