Invent Your Own Computer Games with Python, 4th Edition

Invent Your Own Computer Games with Python, 4th Edition

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.

Python Beyond the Basics

Python Beyond the Basics

You're a student who wants to jumpstart their career with practical skills, or you're a self-taught beginner who has learned all you can from beginner programmer books and coding bootcamps. Now you're looking for the next step to becoming a real-world professional programmer so you can create your own apps and get started with your career. If that fits, then this book is for you! This book is perfect for self-taught programmers looking for the stuff intro books don't teach you and students wanting to get practical information before getting started with applying their new programming skills.

Coding with Minecraft

Build Taller, Farm Faster, Mine Deeper, and Automate the Boring Stuff

Coding with Minecraft

A hands-on introduction to coding that teaches you how to program bots to do cool things in the game you love--Minecraft! This book takes the robotic "turtle" method, and extends it to the 3D, interactive world of Minecraft. You've mined for diamonds, crafted dozens of tools, and built all sorts of structures--but what if you could program robots to do all of that for you in a fraction of the time? In Coding with Minecraft®, you'll create a virtual robot army with Lua, a programming language used by professional game developers. Step-by-step coding projects will show you how to write programs that automatically dig mines, collect materials, craft items, and build anything that you can imagine. Along the way, you'll explore key computer science concepts like data types, functions, variables, and more. Learn how to: - Program robots that make smart decisions with flow control - Reuse code so that your robots can farm any crop you want, including wheat, sugar cane, and even cacti! - Program a factory that generates infinite building supplies - Design an algorithm for creating walls and buildings of any size - Code yourself a pickaxe-swinging robotic lumberjack! - Create a robot that digs mine shafts with stairs so you can explore safely Bonus activities in each chapter will help you take your coding skills to the next level. By the end of the book, you'll understand how powerful coding can be and have plenty of robots at your beck and call.

Automate the Boring Stuff with Python, 2nd Edition

Practical Programming for Total Beginners

Automate the Boring Stuff with Python, 2nd Edition

The second edition of this best-selling Python book (100,000+ copies sold in print alone) uses Python 3 to teach even the technically uninclined how to write programs that do in minutes what would take hours to do by hand. There is no prior programming experience required and the book is loved by liberal arts majors and geeks alike. If you've ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you? In this fully revised second edition of the best-selling classic Automate the Boring Stuff with Python, you'll learn how to use Python to write programs that do in minutes what would take you hours to do by hand--no prior programming experience required. You'll learn the basics Python and explore Python's rich library of modules for performing specific tasks, like scraping data off websites, reading PDF and Word documents, and automating clicking and typing tasks. The second edition of this international fan favorite includes a brand-new chapter on input validation, as well as tutorials on automating Gmail and Google Sheets, plus tips on automatically updating CSV files. You'll learn how to create programs that effortlessly perform useful feats of automation to: • Search for text in a file or across multiple files • Create, update, move, and rename files and folders • Search the Web and download online content • Update and format data in Excel spreadsheets of any size • Split, merge, watermark, and encrypt PDFs • Send email responses and text notifications • Fill out online forms Step-by-step instructions walk you through each program, and updated practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks. Don't spend your time doing work a well-trained monkey could do. Even if you've never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python, 2nd Edition.

Scratch Programming Playground, 2nd Edition (Scratch 3)

Scratch Programming Playground, 2nd Edition (Scratch 3)

A project-filled introduction to coding that shows kids how to build programs by making cool games. Based on Scratch 3, the world's most popular drag-and-drop programming language developed by the MIT Lifelong Kindergarten Group. Kids learn to code by making fun computer games with the Scratch programming language. Games include things like a timed maze, a snake game, asteroids, and more. By combining colorful Scratch programming blocks of code, kids quickly learn computer programming concepts, like loops, strings, and variables, without having to master the cryptic syntax found in most programming languages. Easy-to-follow, full color instructions let readers get immediate results with minor supervision. Review questions and coding challenges reinforce learning and aid classroom use and the development of lesson plans.

Python Interviews

Discussions with Python Experts

Python Interviews

Mike Driscoll takes you on a journey talking to a hall-of-fame list of truly remarkable Python experts. You’ll be inspired every time by their passion for the Python language, as they share with you their experiences, contributions, and careers in Python. Key Features Hear from these key Python thinkers about the current status of Python, and where it's heading in the future Listen to their close thoughts on significant Python topics, such as Python's role in scientific computing, and machine learning Understand the direction of Python, and what needs to change for Python 4 Book Description Each of these twenty Python Interviews can inspire and refresh your relationship with Python and the people who make Python what it is today. Let these interviews spark your own creativity, and discover how you also have the ability to make your mark on a thriving tech community. This book invites you to immerse in the Python landscape, and let these remarkable programmers show you how you too can connect and share with Python programmers around the world. Learn from their opinions, enjoy their stories, and use their tech tips. • Brett Cannon - former director of the PSF, Python core developer, led the migration to Python 3. • Steve Holden - tireless Python promoter and former chairman and director of the PSF. • Carol Willing - former director of the PSF and Python core developer, Project Jupyter Steering Council member. • Nick Coghlan - founding member of the PSF's Packaging Working Group and Python core developer. • Jessica McKellar - former director of the PSF and Python activist. • Marc-André Lemburg - Python core developer and founding member of the PSF. • Glyph Lefkowitz - founder of Twisted and fellow of the PSF • Doug Hellmann - fellow of the PSF, creator of the Python Module of the Week blog, Python community member since 1998. • Massimo Di Pierro - fellow of the PSF, data scientist and the inventor of web2py. • Alex Martelli - fellow of the PSF and co-author of Python in a Nutshell. • Barry Warsaw - fellow of the PSF, Python core developer since 1995, and original member of PythonLabs. • Tarek Ziadé - founder of Afpy and author of Expert Python Programming. • Sebastian Raschka - data scientist and author of Python Machine Learning. • Wesley Chun - fellow of the PSF and author of the Core Python Programming books. • Steven Lott - Python blogger and author of Python for Secret Agents. • Oliver Schoenborn - author of Pypubsub and wxPython mailing list contributor. • Al Sweigart - bestselling author of Automate the Boring Stuff with Python and creator of the Python modules Pyperclip and PyAutoGUI. • Luciano Ramalho - fellow of the PSF and the author of Fluent Python. • Mike Bayer - fellow of the PSF, creator of open source libraries including SQLAlchemy. • Jake Vanderplas - data scientist and author of Python Data Science Handbook. What you will learn How successful programmers think The history of Python Insights into the minds of the Python core team Trends in Python programming Who this book is for Python programmers and students interested in the way that Python is used – past and present – with useful anecdotes. It will also be of interest to those looking to gain insights from top programmers.

Doing Math with Python

Use Programming to Explore Algebra, Statistics, Calculus, and More!

Doing Math with Python

Doing Math with Python shows you how to use Python to delve into high school–level math topics like statistics, geometry, probability, and calculus. You’ll start with simple projects, like a factoring program and a quadratic-equation solver, and then create more complex projects once you’ve gotten the hang of things. Along the way, you’ll discover new ways to explore math and gain valuable programming skills that you’ll use throughout your study of math and computer science. Learn how to: –Describe your data with statistics, and visualize it with line graphs, bar charts, and scatter plots –Explore set theory and probability with programs for coin flips, dicing, and other games of chance –Solve algebra problems using Python’s symbolic math functions –Draw geometric shapes and explore fractals like the Barnsley fern, the Sierpinski triangle, and the Mandelbrot set –Write programs to find derivatives and integrate functions Creative coding challenges and applied examples help you see how you can put your new math and coding skills into practice. You’ll write an inequality solver, plot gravity’s effect on how far a bullet will travel, shuffle a deck of cards, estimate the area of a circle by throwing 100,000 "darts" at a board, explore the relationship between the Fibonacci sequence and the golden ratio, and more. Whether you’re interested in math but have yet to dip into programming or you’re a teacher looking to bring programming into the classroom, you’ll find that Python makes programming easy and practical. Let Python handle the grunt work while you focus on the math. Uses Python 3

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!

Automate the Boring Stuff with Python

Practical Programming for Total Beginners

Automate the Boring Stuff with Python

If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you? In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to: –Search for text in a file or across multiple files –Create, update, move, and rename files and folders –Search the Web and download online content –Update and format data in Excel spreadsheets of any size –Split, merge, watermark, and encrypt PDFs –Send reminder emails and text notifications –Fill out online forms Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks. Don’t spend your time doing work a well-trained monkey could do. Even if you’ve never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python. Note: The programs in this book are written to run on Python 3.