The 10 Python open access books
Tags: python, books, opensource
Published: 2020-05-27 21:54:02

<a href="https://www.dbooks.org/think-python-1491939362/" target="_blank">1) Think Python, 2nd Edition <small>by Allen Downey</small></a>

If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for Python 3.

<a href="https://www.dbooks.org/programming-for-computations-python-3030168778/" target="_blank">2) Programming for Computations - Python <small>by Svein Linge, Hans Petter Langtangen</small></a>

This book presents computer programming as a key method for solving mathematical problems. This second edition of the well-received book has been extensively revised: All code is now written in Python version 3.6. In addition, the two first chapters of the previous edition have been extended and split up into five new chapters, thus expanding the introduction to programming from 50 to 150 pages. Throughout the book, the explanations provided are now more detailed, previous examples have been modified, and new sections, examples and exercises have been added.

<a href="https://www.dbooks.org/a-byte-of-python-1219/" target="_blank">3) A Byte of Python <small>by Swaroop C H</small></a>

A Byte of Python is a book on programming using the Python language. It serves as a tutorial or guide to the Python language for a beginner audience. If all you know about computers is how to save text files, then this is the book for you. This book will teach you to use Python version 3. There will also be guidance for you to adapt to the older and more common Python version 2 in the book.

<a href="https://www.dbooks.org/invent-your-own-computer-games-with-python-1503212300/" target="_blank">4) Invent Your Own Computer Games with Python, 3rd Edition <small>by Al Sweigart</small></a>

Invent Your Own Computer Games with Python teaches you how to program in the Python language. Each chapter gives you the complete source code for a new game, and then teaches the programming concepts from the examples. Games include Guess the Number, Hangman, Tic Tac Toe, and Reversi. This book also has an introduction to making games with 2D graphics using the Pygame framework.

<a href="https://www.dbooks.org/fundamentals-of-python-programming-1200/" target="_blank">5) Fundamentals of Python Programming <small>by Richard L. Halterman</small></a>

This book does not attempt to cover all the facets of the Python programming language. Experienced programmers should look elsewhere for books that cover Python in much more detail. The focus here is on introducing programming techniques and developing good habits. To that end, our approach avoids some of the more esoteric features of Python and concentrates on the programming basics that transfer directly to other imperative programming languages such as Java, C#, and C++ . We stick with the basics and explore more advanced features of Python only when necessary to handle the problem at hand.

<a href="https://www.dbooks.org/hacking-secret-ciphers-with-python-1482614375/" target="_blank">6) Hacking Secret Ciphers with Python <small>by Al Sweigart</small></a>

This book is for complete beginners who do not know anything about encryption, hacking, or cryptography. The ciphers in this book (except for the RSA cipher in the last chapter) are all centuries old, and modern computers now have the computational power to hack their encrypted messages. No modern organization or individuals use these ciphers anymore. As such, there's no reasonable context in which you could get into legal trouble for the information in this book.

<a href="https://www.dbooks.org/annotated-algorithms-in-python-0991160401/" target="_blank">7) Annotated Algorithms in Python <small>by Massimo Di Pierro</small></a>

This book is assembled from lectures given by the author over a period of 10 years at the School of Computing of DePaul University. The lectures cover multiple classes, including Analysis and Design of Algorithms, Scientific Computing, Monte Carlo Simulations, and Parallel Algorithms. These lectures teach the core knowledge required by any scientist interested in numerical algorithms and by students interested in computational finance.

<a href="https://www.dbooks.org/making-games-with-python-pygame-1469901730/" target="_blank">8) Making Games with Python & Pygame <small>by Al Sweigart</small></a>

This book features seven different games that are clones of popular games that you’ve probably already played. The games are a lot more fun and interactive than the text-based games in Invent with Python, but are still fairly short. All of the programs are less than 600 lines long. This is pretty small when you consider that professional games you download or buy in a store can be hundreds of thousands of lines long. These games require an entire team of programmers and artists working with each other for months or years to make.

<a href="https://www.dbooks.org/modeling-and-simulation-in-python-847/" target="_blank">9) Modeling and Simulation in Python <small>by Allen Downey</small></a>

Modeling and Simulation in Python is an introduction to physical modeling using a computational approach. It is organized in three parts: The first part presents discrete models, including a bikeshare system and world population growth; The second part introduces first-order systems, including models of infectious disease, thermal systems, and pharmacokinetics; The third part is about second-order systems, including mechanical systems like projectiles, celestial mechanics, and rotating rigid bodies.

<a href="https://www.dbooks.org/retro-gaming-with-raspberry-pi-1252/" target="_blank">10) Retro Gaming with Raspberry Pi <small>by Bob Clagett, David Crookes, PJ Evans, Rosie Hattersley, KG Orphanides, Ruiz Brothers, Mark Vanstone</small></a>

This open book shows you how to set up a Raspberry Pi to play classic games, and a whole lot more. Build your own portable console, full-size arcade cabinet, and pinball machine with our step-by-step guides. And learn how to program your own games, using Python and Pygame Zero.