Impractical Python Projects: Playful Programming Activities to Make You Smarter
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.
Praise for Impractical Python Projects: Playful Programming Activities to Make You Smarter
"Python is a programming language, but it is also fun to play with. This book recognizes that."
—Geek Tech Stuff
"Rather than being an introductory text, Vaughan’s book pushes you in interesting directions for solving a diverse set of problems. Most of these “impractical” projects, while themselves being not so useless after all, will have parallels to real life projects."
—Greg Laden, Greg Laden's Blog
"The book is not a Python tutorial or guide. Instead, it presents stimulating coding projects for non-programmers who want to use Python for doing experiments, test theories, or simulate natural phenomena.”
—Paolo Amoroso, Moonshots Beyond the Cloud Blog
"A must have second book for every developer that ever wants to learn Python as a language."
—Ian Mizer, Atlanta Python Programmers Group
"The writing is excellent . . . Every project is accessible and has enough explanation to motivate coding."
—Ravi Srinivasan, Playful Python