Python Playground

Geeky Projects for the Curious Programmer

Python Playground

Python is a powerful programming language that’s easy to learn and fun to play with. But once you’ve gotten a handle on the basics, what do you do next? Python Playground is a collection of imaginative programming projects that will inspire you to use Python to make art and music, build simulations of real-world phenomena, and interact with hardware like the Arduino and Raspberry Pi. You’ll learn to use common Python tools and libraries like numpy, matplotlib, and pygame to do things like: *Generate Spirograph-like patterns using parametric equations and the turtle module *Create music on your computer by simulating frequency overtones *Translate graphical images into ASCII art *Write an autostereogram program that produces 3D images hidden beneath random patterns *Make realistic animations with OpenGL shaders by exploring particle systems, transparency, and billboarding techniques *Construct 3D visualizations using data from CT and MRI scans *Build a laser show that responds to music by hooking up your computer to an Arduino Programming shouldn’t be a chore. Have some solid, geeky fun with Python Playground. The projects in this book are compatible with both Python 2 and 3.

Invent Your Own Computer Games with Python, 4E

Invent Your Own Computer Games with Python, 4E

Invent Your Own Computer Games with Python will teach you how to make computer games using the popular Python programming language—even if you’ve never programmed before! Begin by building classic games like Hangman, Guess the Number, and Tic-Tac-Toe, and then work your way up to more advanced games, like a text-based treasure hunting game and an animated collision-dodging game with sound effects. Along the way, you’ll learn key programming and math concepts that will help you take your game programming to the next level. Learn how to: –Combine loops, variables, and flow control statements into real working programs –Choose the right data structures for the job, such as lists, dictionaries, and tuples –Add graphics and animation to your games with the pygame module –Handle keyboard and mouse input –Program simple artificial intelligence so you can play against the computer –Use cryptography to convert text messages into secret code –Debug your programs and find common errors As you work through each game, you’ll build a solid foundation in Python and an understanding of computer science fundamentals. What new game will you create with the power of Python? The projects in this book are compatible with Python 3.

Impractical Python Projects

Playful Programming Activities to Make You Smarter

Impractical Python Projects

Impractical Python Projects is a collection of fun and educational projects designed to entertain programmers while enhancing their Python skills. It picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you'll use every day. And to keep things interesting, each project includes a zany twist featuring historical incidents, pop culture references, and literary allusions. You'll flex your problem-solving skills and employ Python's many useful libraries to do things like: - Help James Bond crack a high-tech safe with a hill-climbing algorithm - Write haiku poems using Markov Chain Analysis - Use genetic algorithms to breed a race of gigantic rats - Crack the world's most successful military cipher using cryptanalysis - Derive the anagram, "I am Lord Voldemort" using linguistical sieves - Plan your parents' secure retirement with Monte Carlo simulation - Save the sorceress Zatanna from a stabby death using palingrams - Model the Milky Way and calculate our odds of detecting alien civilizations - Help the world's smartest woman win the Monty Hall problem argument - Reveal Jupiter's Great Red Spot using optical stacking - Save the head of Mary, Queen of Scots with steganography - Foil corporate security with invisible electronic ink Simulate volcanoes, map Mars, and more, all while gaining valuable experience using free modules like Tkinter, matplotlib, Cprofile, Pylint, Pygame, Pillow, and Python-Docx. Whether you're looking to pick up some new Python skills or just need a pick-me-up, you'll find endless educational, geeky fun with Impractical Python Projects.

Cracking Codes with Python

An Introduction to Building and Breaking Ciphers

Cracking Codes with Python

Learn how to program in Python while making and breaking ciphers—algorithms used to create and send secret messages! After a crash course in Python programming basics, you’ll learn to make, test, and hack programs that encrypt text with classical ciphers like the transposition cipher and Vigenère cipher. You’ll begin with simple programs for the reverse and Caesar ciphers and then work your way up to public key cryptography, the type of encryption used to secure today’s online transactions, including digital signatures, email, and Bitcoin. Each program includes the full code and a line-by-line explanation of how things work. By the end of the book, you’ll have learned how to code in Python and you’ll have the clever programs to prove it! You’ll also learn how to: - Combine loops, variables, and flow control statements into real working programs - Use dictionary files to instantly detect whether decrypted messages are valid English or gibberish - Create test programs to make sure that your code encrypts and decrypts correctly - Code (and hack!) a working example of the affine cipher, which uses modular arithmetic to encrypt a message - Break ciphers with techniques such as brute-force and frequency analysis There’s no better way to learn to code than to play with real programs. Cracking Codes with Python makes the learning fun!