Here is my personal list of legally free Python books. Warning: Packt free books are highly unreliable, what can be free today can no longer be free tomorrow They were included as they are free at the time of writing this post. Similarly is Oreilly’s case. The two publishing houses have been annotated as necessary. In case of no longer free or broken links please mail me at arj.python at gmail dot com
to update article. I have to thank the internet who took the pain to point these resources to me. I have skimmed through the contents to producs a list of legally free Python books of value. Here’s how i evaluated books (you might not agree, but that’s my personal take on it):
Some popular listed books like Python Module of the Week is not a book and Tango with Django 1.7 is outdated. Materials which provide only some free chapters are not free books. Docs manuals are docs manuals, you’d have to include a quarter of pypi’s packages manuals then. github projects are gihub projects unless it’s a book. Mark pilgrim ran away so should we from his book. We don’t want some illegal 100+ free list (Mark Lutz books are not free mind you), you could include all Python books hosted on drive then. Python2 is past, we passed over. Fullstackpython’s list is a collection of various sites’ articles, not a book. Really short books more qualified as leaflets did not make it. Such materials have been deliberately left out. What remains are books that you’ll enjoy!
Note: was pythonmembers.club before, so if you have the domain’s link, please update
Let’s start! Click on the titles to view/download the book.
INTRODUCTORY MATERIALS
Think Python
Allen Downey
Python Practice Book
Anand Chitipothu
This book is prepared from the training notes of Anand Chitipothu.
Practical Python Programming
David Beazley
Highly recommended book. Normally taught in 3/4 days. It offers solid foundations. This course is taught to scientists and engineers. The name of the author is a trademark of excellence. Do read it even if you already know Python!
Learn Python Programming - Second Edition
Fabrizio Romano - Packt
Learn Python Programming is a quick, thorough, and practical introduction to Python - an extremely flexible and powerful programming language that can be applied to many disciplines. You will begin by learning the fundamentals of Python so that you have a rock-solid foundation to build upon. Covers some data science, GUI and web (Django).
Python For Everybody
Charles R. Severance
The goal of this book is to provide an Informatics-oriented introduction to programming. The primary approach taken in this book is using Python to solve data analysis problems common in the world of Informatics.
Python 3 Basics Tutorial
Dr. Kristian Rother
The perfect introduction for completely new people
Non-Programmer’s Tutorial for Python 3
Josh Cogliati
The Non-Programmers’ Tutorial For Python 3 is a tutorial designed to be an introduction to the Python programming language. This guide is for someone with no programming experience.
The Coder’s Apprentice
Pieter Spronck
“The Coder’s Apprentice” aims at teaching Python 3 to students and teenagers who are completely new to programming. Contrary to many of the other books that teach Python programming, this book assumes no previous knowledge of programming on the part of the students, and contains numerous exercises that allow students to train their programming skills.
A Practical Introduction to Python Programming
Brian Heinold
The book aims at striking the balance between a tutorial and reference book. Includes some fun exercises at the end!
A Byte of Python
Swaroop C H
“A Byte of Python” is a free 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.
Intermediate Python
Muhammad Yasoob Ullah Khalid
Python is an amazing language with a strong and friendly community of programmers. However, there is a lack of documentation on what to learn after getting the basics of Python down your throat. Through this book I aim to solve this problem. I would give you bits of information about some interesting topics which you can further explore. The topics which are discussed in this book open up your mind towards some nice corners of Python language. This book is an outcome of my desire to have something like this when I was beginning to learn Python. If you are a beginner, intermediate or even an advanced programmer there is something for you in this book. Please note that this book is not a tutorial and does not teach you Python. The topics are not explained in depth, instead only the minimum required information is given. A true example of legally free Python books.
Boxes: Your Second Python Book
Roberto Alcina
This book tries to achieve only one thing: Show you a project go from nothing to OK. By nothing I mean, no code at all. Not even a fleshed idea of what it does. No goals, no commitments. Just a vague interest. And by OK I mean it will work, it will have tests, it will be available to use, it will be useful and be a real thing. Think of it as a sort of documentary on the beginnings of a rock band, only instead of rockers there is a single overweight Argentinian dev, and instead of a band there is a piece of software. So, not much like a documentary on the beginnings of a rock band.
Learn Python, Break Python
Scott Grant
Learn Python, Break Python is a hands-on introduction to the Python programming language, written for people who have no experience with programming whatsoever. Hey, we all have to start somewhere. As such, the examples and teaching style used in this text make absolutely no expectations about your prior programming experience. Anyone can pick up the art of programming with a little time and a bit of patience. However, when learning something new, I try to break things. In fact, in many cases, I go out of my way to break stuff. When picking up a new concept like computer programming, you can actually increase your comfort level by figuring out the type of cases that are likely to break. You’ll see what data can be used and where, and when you inevitably run into errors later (like everyone does), you won’t be surprised.
Algorithmic Problem Solving with Python
John B. Schneider, Shira Lynn Broschat, Jess Dahmen
(Not an algo book) Python’s syntax and idioms are much easier to learn than those of most other full-featured languages. This book uses programming language Python to introduce folks to programming and algorithmic thinking.
The Hitchhiker’s Guide to Python.
Kenneth Reitz
This opinionated guide exists to provide both novice and expert Python developers a best-practice handbook to the installation, configuration, and usage of Python on a daily basis.
Slither Into Python
Slither into Python is an introduction to Python for complete beginners. No prior programming experience or computer science background is necessary. Unlike any other Python resources I have found (not that they’re not out there), they don’t explain important computer science concepts such as memory or “how computers work”. In this book I will cover the fundamentals of the Python language and also introduce these important concepts. Put simply, coding or computer programming is about making computers do what you want, Computer Science is about how computers do it. Each go hand-in-hand, help you learn faster and improve your overall understanding of a language! This book aims to do exactly that through Python.
A Whirlwind Tour of Python
Jake VanderPlas - Oreilly
The book provides a whirlwind tour of some of Python’s essential syntax and semantics, built-in data types and structures, function definitions, control flow statements, and other aspects of the language. My aim is that readers will walk away with a solid foundation from which to explore the data science stack just outlined.
Python For You and Me
Kushal Das (Core Dev)
A book for the total new comers into Python world. Was started as book for students before they read Python tutorial. Given it’s from a core dev, even up to chapter choice order is insightful.
Python for Astronomers
Imad Pasha, Christopher Agostino
This text is designed to be an introduction to the Python programming language — which is now used nearly ubiquitously in astronomy — with applications to the types of tasks an undergraduate (or beginning graduate student) might have to tackle. It is not, in any way, meant to be comprehensive; my focus is on bringing you up to speed as efficiently and quickly as possible. This text might have useful information for those with a working knowledge of Python outside of a research setting, but is primarily designed for those with no prior programming experience. By the end of this text, I hope to have shared enough to make you feel comfortable taking the first steps into research-type problems (of which this book will contain several examples), whether in an astronomy course, a research internship, or on-campus research.
OBI Intermediate Python
Obi Ike-Nwosu
The python ecosystem is awash with books for beginners but few books target readers that are past the beginning stages but are not yet advanced users. The book aims to bridge that gap. The content of this book looks primarily at the various means for code organization in Python and provides user with a rigorous grounding in these. it dives into topics such as python object system, functions, decorators, metaprogramming and generators providing the reader with an in-depth knowledge of these topics that is essential for writing idiomatic and robust python code. It aims to provide a reader with not only a how-to but also a why for Python concepts. Concepts are well explained with abundance of code snippets. If you are looking for a book to take you beyond the beginner level in python, this is definitely the right book for you.
A Python Book: Beginning Python, Advanced Python, and Python Exercises
Dave Kuhlman
This document is a self-learning document for a course in Python programming. This course contains (1) a part for beginners, (2) a discussion of several advanced topics that are of interest to Python programmers, and (3) a Python workbook with lots of exercises. This book is a collection of materials that I’ve used when conducting Python training and also materials from my Web site that are intended for self-instruction.
DigitalOcean eBook: How To Code in Python
Lisa Tagliaferri
If you use the book in the order it is laid out, you’ll begin your exploration in Python by understanding the key differences between Python 3 and the previous versions of the language. From there, you’ll set up a programming environment for your relevant local or server-based system, and begin by learning general Python code structure, syntax, and data types. Along the way, you’ll gain a solid grounding in computational logic within Python, a set of skills relevant even when moving to other programming languages in the future. While the beginning of the book focuses on scripting in Python, object-oriented coding concepts are gradually introduced to help make your code more modular, flexible, and complex without repetition. By the end of the book, you’ll learn how to debug your Python code and finally how to port Python code across versions.
CONTINUATION
Beyond the Basic Stuff with Python
Al Sweigart
More than a mere collection of advanced syntax and masterful tips for writing clean code, you’ll learn how to advance your Python programming skills by using the command line and other professional tools like code formatters, type checkers, linters, and version control. Sweigart takes you through best practices for setting up your development environment, naming variables, and improving readability, then tackles documentation, organization and performance measurement, as well as object-oriented design and the Big-O algorithm analysis commonly used in coding interviews. The skills you learn will boost your ability to program—not just in Python but in any language.
Python 201 – (Slightly) Advanced Python Topics
Dave Kuhlman
It shines with creating a parser with Plex
Python re(gex)?
Sundeep Agarwal
An entire book, dedicated to RegEx
PROJECTS-BASED
Automate the Boring Stuff with Python
Al Sweigart - No Starch Press
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.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. A true example of legally free Python books.
The Recursive Book Of Recursion
Al Sweigart - No Starch Press
This book teaches the basics of recursion, exposes the ways it’s often poorly taught, and clarifies the fundamental principles behind all recursive algorithms. It is project-based, containing complete, runnable programs in both Python and JavaScript, and covers several common recursive algorithms for tasks like calculating factorials, producing numbers in the Fibonacci sequence, tree traversal, maze solving, binary search, quicksort and merge sort, Karatsuba multiplication, permutations and combinations, and solving the eight queens problem.
The Big Book of Small Python Projects
Al Sweigart - No Starch Press
This curated collection of simple Python projects lets you dive right in and make digital art, games, animations, number-crunching tools and more – right away! Forget standard step-by-step tutorials; instead, author Al Sweigart takes a learn-by-doing approach that provides you with over 80 programs to manually copy, run, and play with. Once you see how the code works, it’s time to experiment with your own changes and practice re-creating them yourself.
Python for Scientists and Engineers
Shantnu Tiwari
Video processing DSP, machine learning and Rpi, this book is the next book Python beginners should maybe jump to to consolidate their knowledge.
Python For Fun
Chris Meyers
Python for Fun turns 16 this year. From the first project “Lisp in Python” to the current latest “Binary Trees and Functional Programming”, the site is and remains a collection of fairly small projects created mostly for fun. They are aimed at the intermediate programmer; people who know Python and are fairly comfortable with OOP and perhaps a bit of basic recursion. Most programs are quite short, generally a few pages of code and all of the projects are accompanied with a write-up.
CORRECT WAY
How to Make Mistakes in Python
Mike Pirnat
Even the best programmers make mistakes, and experienced programmer Mike Pirnat has made his share during 15+ years with Python. Some have been simple and silly; others were embarrassing and downright costly. In this O’Reilly report, he dissects some of his most memorable blunders, peeling them back layer-by-layer to reveal just what went wrong.
Practices of the Python Pro
Dane Hillard
Introductory book to good software engineering practices like separation of concerns, high performance and loose coupling. A must for every beginner!
Internals
Inside The Python Virtual Machine
Obi Ike-Nwosu
fasten your seat-belts as this book will take you on a tour of the virtual machine that runs your Python code. It will describe how Python code is compiled and run, how the language itself can be modified and will demystify the mysterious bytecodes that run on the Python virtual machine.
SOFTWARE ENGINEERING
Clean Architectures in Python
Leonardo Giordani - LeanPub. Also available on pycabook.com
What is a good software architecture? Why should we bother structuring the code and spending time testing it? If you like spending hours debugging your programs or staying late at the office to recover from a buggy deploy in production this book is definitely NOT for you!
The Little Book of Python Anti-Patterns
QuantifiedCode
Welcome, fellow Pythoneer! This is a small book of Python anti-patterns and worst practices. Learning about these anti-patterns will help you to avoid them in your own code and make you a better programmer (hopefully). Each pattern comes with a small description, examples and possible solutions. A true example of legally free python books.
Python 3 Patterns, Recipes and Idioms
Bruce Eckel
Python 3 concepts, patterns and idioms. Addressed to the experienced Python programmer (not beginner)
Design Patterns in Python
Alexander Shvets, Andrei Boyanov
Design patterns in Python divided in chapters with example, free on the link. Is an Apress book. Super cool book!
Python Design Patterns
Brandon Rhodes
A classic and respected book on DP in the Python community.
Cosmic Python
Harry Percival, Bob Gregory
Our aim with this book is to introduce several classic architectural patterns and show how they support TDD, DDD, and event-driven services. We hope it will serve as a reference for implementing them in a Pythonic way, and that people can use it as a first step toward further research in this field. Here are a few things we assume about you, dear reader: You’ve been close to some reasonably complex Python applications. You’ve seen some of the pain that comes with trying to manage that complexity. You don’t necessarily know anything about DDD or any of the classic application architecture patterns.
We structure our explorations of architectural patterns around an example app, building it up chapter by chapter. We use TDD at work, so we tend to show listings of tests first, followed by implementation. If you’re not used to working test-first, it may feel a little strange at the beginning, but we hope you’ll soon get used to seeing code “being used” (i.e., from the outside) before you see how it’s built on the inside. We use some specific Python frameworks and technologies, including Flask, SQLAlchemy, and pytest, as well as Docker and Redis. If you’re already familiar with them, that won’t hurt, but we don’t think it’s required. One of our main aims with this book is to build an architecture for which specific technology choices become minor implementation details.
TDD
Test-Driven Web Development with Python
Harry Percival
“Test-Driven Web Development with Python” aims to teach TDD for web programming. It uses a concrete example – the development of a website, from scratch – to explain the TDD metholology and how it applies to building web applications. It covers the Selenium browser-automation tool, unit testing, mocking, and interacting with Web technologies from the basics of static content, database integration, throught the inescapable JavaScript, and onto more advanced (and trendy) topics like NoSQL, websockets and Async programming. A true example of legally free Python books.
OOP
Building Skills in Object-Oriented Design
Steve F. Lot
How do you move from OO programming to OO design? This 301-page book has 49 chapters that will help you build OO design skills through the creation of a moderately complex family of application programs.
Object Oriented Programming with Python
Ashwin Pajankar, Sushant Garg - LeanPub
This book is the simple and definitive guide to the Python 3 Object Oriented Programming. Other book of the similar genres make use of complicated writing style and examples to introduce the readers to the OOP in Python 3. However, this book uses Simple language to explain concepts. It is aimed at intermediate learners who already know Python.
FUNCTIONAL PROGRAMMING
Functional Programming in Python
David Mertz
Python is not a functional programming language, but it is a multi-paradigm language that makes functional programming easy to perform, and easy to mix with other programming styles. In this paper, David Mertz, a director of Python Software Foundation, examines the functional aspects of the language and points out which options work well and which ones you should generally decline.
TEXT PROCESSING
Text Processing in Python
David Mertz
This is an example-driven, hands on tutorial that carefully teaches programmers how to accomplish numerous text processing tasks using Python.
CRYPTOGRAPHY
Cracking Codes with Python
Al Sweigart - No Starch Press
Cracking Codes with Python teaches complete beginners how to program in the Python programming language. The book features the source code to several ciphers and hacking programs for these ciphers. The programs include the Caesar cipher, transposition cipher, simple substitution cipher, multiplicative & affine ciphers, Vigenere cipher, and hacking programs for each of these ciphers. The final chapters cover the modern RSA cipher and public key cryptography.
WEB
Explore Flask
Robert Picard
This book is a collection of the best practices for using Flask. There are a lot of pieces to the average Flask application. You’ll often need to interact with a database and authenticate users, for example. In the coming pages I’ll do my best to explain the “right way” to do this sort of stuff. My recommendations aren’t always going to apply, but I’m hoping that they’ll be a good option most of the time. It might be the Flask book you need! A true example of legally free Python books.
Django Girls Intro
A simple, step by step straight-forward introduction to Django designed to be hands-on and so breaks it down for your to really understand. Tested with Python 3.8, Django 3.0, still works. An amazing first material for beginners. It even assumes you don’t know Python at all!
Django Girls Beyond The Basics
This tutorial picks up where the previous tutorial left. It includes draft, delete and commenting systems. A graceful roundup.
Django RESTful Web Services
Gaston C. Hillar - Packt
Django is a Python web framework that makes the web development process very easy. It reduces the amount of trivial code that simplifies the creation of web applications and results in faster development. It is a very powerful and a great choice for creating RESTful web services. Includes API auth, pagination and test automation.
Build websites with Web2Py
Massimo Di Pierro
I believe that the ability to easily build high quality web applications is of critical importance for the growth of a free and open society. This prevents the biggest players from monopolizing the flow of information. As you will learn in the following pages, web2py
tries to lower the barrier of entry to web development by focusing on three main goals: ease of use, rapid development and security.
The Flask Mega-Tutorial
Miguel Grinberg
Introduction to web development with Flask. A Flask classic!
Web App with Redis And Streaming
Allen Downey
Same as Think Data Structures
Create a Simple Flask Application with Cloud9, Heroku and MongoDB
Douglas Starnes
One of the biggest hurdles to learning a new framework, language or tool is the prerequisite setup and configuration that needs to take place. This can be a frustrating and discouraging experience. Also, the cost associated with doing often makes experimentation prohibitive or at least restricted. That is why in this short book, I have chosen tools and services that require little or no setup, and are all free. In fact, none of them require any installation because they all run in the browser. Throughout the enitire book, you’ll never have to leave the web browser.
GAMES
Invent Your Own Computer Games with Python
Al Sweigart - No Starch Press
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 true example of legally free Python books.
Make Games with Graphics
Al Sweigart - No Starch Press
Making Games with Python & Pygame covers the Pygame library with the source code for 11 games. Making Games was written as a sequel for the same age range as Invent with Python. Once you have an understanding of the basics of Python programming, you can now expand your abilities using the Pygame library to make games with graphics, animation, and sound.
Make Games With Python
Sean M. Tracey - The mag Pi
Python basics, sounds, physics and alien game, A simple mix.
Program Arcade Games With Python And Pygame
Paul Vincent Craven
A cheerful guide to Python. Gleeful content. Demos of what students created make you feel part of a cool class.
Becoming PyGamer
Jani Tiainen
Your PyGame introductory book. Perfect for PyGame workshops!
DATA STRUCTURES AND ALGORITHMS
Problem Solving with Algorithms and Data Structures using Python
Brad Miller and David Ranum
Probably the best data and algo book out there. It goes in depth about data structures and algorithms. It covers basic Python which makes it a suitable introductory material for undergrad university students. Beginning from stacks, the coverage goes in details and solves common problems such as the Hanoi tower. You’ve got it all, searching, sorting, trees, graphs … They deserve massive respect for releasing it under a creative common license.
Think Complexity
Allen Downey
Complexity Science is an interdisciplinary
field—at the intersection of mathematics, computer science, and natural science—that focuses on discrete models of physical and
social systems. In particular, it focuses on complex systems, which are systems with many interacting components. Complex systems include networks and graphs, cellular automatons, agent-based models and swarms, fractals and self-organizing systems, chaotic systems and cybernetic systems. This book is primarily about complexity science, but studying complexity science gives you a chance to explore topics and ideas you might not encounter otherwise, practice programming in Python, and learn about data structures and algorithms. This book picks up where Think Pythonleaves off.
Think Data Structures
Allen Downey
Data structures and algorithms are among the most important inventions of the last 50 years, and they are fundamental tools software engineers need to know. But in my opinion, most of the books on these topics are too theoretical, too big, and too bottom-up. I try to alleviate the boredom by organizing the topics around an application—web search—that uses data structures extensively, and is an interesting and important topic in its own right.This application also motivates some topics that are not usually covered in an introductory data structures class, including persistent data structures, with Redis, and streaming algorithms.
Annotated Algorithms (including numerical) in Python With Applications in Physics, Biology And Finance
Massimo Di Pierro
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.
COMPUTER VISION
Programming Computer Vision with Python
Jan Erik Solem - O’Reilly
Cameras are everywhere. Computer vision powers applications like image search, robot navigation, medical image analysis, photo management and many more. This books provides easy hands-on computer vision with enough understanding of the underlying theory and algorithms to be a foundation for students, researchers and enthusiasts. Python comes with many freely available powerful modules for handling images, mathematical computing and data mining. In short this book aims to act as a source of inspiration for those interested in programming computer vision applications
DATA SCIENCE
Effective Pandas
Tom Augspurger
This series is about how to make effective use of pandas, a data analysis library for the Python programming language. It’s targeted at an intermediate level: people who have some experince with pandas, but are looking to improve.
Think Stats
Allen Downey
Think Stats is an introduction to Probability and Statistics for Python programmers. Think Stats emphasizes simple techniques you can use to explore real data sets and answer interesting questions. The book presents a case study using data from the National Institutes of Health. Readers are encouraged to work on a project with real datasets.
Probabilistic Programming & Bayesian Methods for Hackers
Cam Davidson-Pilon
The Bayesian method is the natural approach to inference, yet it is hidden from readers behind chapters of slow, mathematical analysis. The typical text on Bayesian inference involves two to three chapters on probability theory, then enters what Bayesian inference is. Unfortunately, due to mathematical intractability of most Bayesian models, the reader is only shown simple, artificial examples. This can leave the user with a so-what feeling about Bayesian inference. Bayesian Methods for Hackers is designed as a introduction to Bayesian inference from a computational/understanding-first, and mathematics-second, point of view. For the mathematically trained, they may cure the curiosity this text generates with other texts designed with mathematical analysis in mind. For the enthusiast with less mathematical-background, or one who is not interested in the mathematics but simply the practice of Bayesian methods, this text should be sufficient and entertaining. A true example of legally free python books.
Think Bayes
Allen Downey
Think Bayes is an introduction to Bayesian statistics using computational methods. Most books on Bayesian statistics use mathematical notation and present ideas in terms of mathematical concepts like calculus. This book uses Python code instead of math, and discrete approximations instead of continuous mathematics. As a result, what would be an integral in a math book becomes a summation, and most operations on probability distributions are simple loops. I think this presentation is easier to understand, at least for people with programming skills. It is also more general, because when we make modeling decisions, we can choose the most appropriate model without worrying too much about whether the model lends itself to conventional analysis. Also, it provides a smooth development path from simple examples to real-world problems.
Digital Signal Processing in Python (Think DSP)
Allen Downey
Think DSP is an introduction to Digital Signal Processing in Python. The premise of this book (and the other books in the Think X series) is that if you know how to program, you can use that skill to learn other things. I am writing this book because I think the conventional approach to digital signal processing is backward: most books (and the classes that use them) present the material bottom-up, starting with mathematical abstractions like phasors. With a programming-based approach, I can go top-down, which means I can present the most important ideas right away. By the end of the first chapter, you can decompose a sound into its harmonics, modify the harmonics, and generate new sounds.
A Programmer’s Guide to Data Mining
Ron Zacharski
Highly recommended book that takes your hand and explains the maths side of data with lots of illustrations.
Python Data Science Handbook
Jake VanderPlas
This is a book about doing data science with Python. The book is not meant to be an introduction to Python or to programming in general; I assume the reader has familiarity with the Python language, including defining functions, assigning variables, calling methods of objects, controlling the flow of a program, and other basic tasks. Instead it is meant to help Python users learn to use Python’s data science stack–libraries such as IPython, NumPy, Pandas, Matplotlib, Scikit-Learn, and related tools–to effectively store, manipulate, and gain insight from data. A true example of legally free Python books.
VISUALISATIONS-FOCUSED
Python & OpenGL for Scientific Visualization
Nicolas Rougier
Python and OpenGL have a long but complicated story. It used to be really easy to program something using the fixed-pipeline and libraries such as Pyglet. But, things have became more difficult with the introduction of the dynamic graphic pipeline in 2004. Therefore this book is reconciles Python programmers with OpenGL, providing both an introduction to modern OpenGL and a set of basic and advanced techniques in order to achieve both fast, scalable & beautiful scientific visualizations. The book uses the GLES 2.0 API. Though it does not cover up-to-date OpenGL techniques, it is sufficient to achieve great visualisation. Modern OpenGL allows to control much in the pipeline and this book explains several techniques such as isolines, markers, colormaps, arbitrary transformations but there are actually many more techniques to be discovered. And of course, everything will be fast and beautiful. A true example of legally free python books.
DISTRIBUTED SYSTEMS
Hadoop With Python
Zachary Radtka, Donald Miner - Oreilly
About hadoop with Python. Map reduce and PySpark included
MACHINE LEARNING & DEEP LEARNING
Python Machine Learning By Example
Yuxi (Hayden) Liu - Packt
This book is your entry point to machine learning. Through this book, you will learn to apply the concepts of machine learning to deal with data-related problems and solve them using the powerful yet simple language, Python. Interesting and easy-to-follow examples will keep you glued till you learn what machine learning is and how to implement it. Includes spam detection and stock price prediction.
Neural Networks and Deep Learning
Michael Nielsen
The book will teach you about: Neural networks, a beautiful biologically-inspired programming paradigm which enables a computer to learn from observational data, Deep learning: a powerful set of techniques for learning in neural networks Neural networks and deep learning currently provide the best solutions to many problems in image recognition, speech recognition, and natural language processing. This book will teach you many of the core concepts behind neural networks and deep learning.
Deep Learning with Python
Francois Chollet
This book was written for anyone who wishes to explore deep learning from scratch or broaden their understanding of deep learning. Whether you’re a practicing machine-learning engineer, a software developer, or a college student, you’ll find value in these pages.
This book offers a practical, hands-on exploration of deep learning. It avoids mathematical notation, preferring instead to explain quantitative concepts via code snippets and to build practical intuition about the core ideas of machine learning and deep learning.
NATURAL LANGUAGE PROCESSING
Hands-On Natural Language Processing with Python
Rajesh Arumugam and Rajalingappaa Shanmugamani - Packt
This book teaches you to leverage deep learning models in performing various NLP tasks along with showcasing the best practices in dealing with the NLP challenges. The book equips you with practical knowledge to implement deep learning in your linguistic applications using NLTk and Python’s popular deep learning library, TensorFlow. Includes GRUs, Tacotron and Deepspeech
Natural Language Processing with Python
Steven Bird, Ewan Klein, Edward Loper
This is a book about Natural Language Processing. By “natural language” we mean a language that is used for everyday communication by humans; languages like English, Hindi or Portuguese. In contrast to artificial languages such as programming languages and mathematical notations, natural languages have evolved as they pass from generation to generation, and are hard to pin down with explicit rules. We will take Natural Language Processing — or NLP for short — in a wide sense to cover any kind of computer manipulation of natural language. At one extreme, it could be as simple as counting word frequencies to compare different writing styles. At the other extreme, NLP involves “understanding” complete human utterances, at least to the extent of being able to give useful responses to them. A true example of legally free python books.
PORTING TO PYTHON3
Supporting Python3
Lennart Regebro
This book guides you through the process of porting your Python 2 code to Python 3, from choosing a porting strategy to solving your distribution issues. Using plenty of code examples is takes you cross the hurdles and shows you the new Python features.
MISCELLANEOUS
Python in Hydrology
Sat Kumar Tomer
This book teaches you how to compute rainfall, precipitation, evaporation, River Routing–Muskingum method and a host of things in Hydrology. Moreover it also has a chapter devoted to statistics and plotting.
Bioinformatics in Python
Jeff Chang, Brad Chapman, Iddo Friedberg, Thomas Hamelryck, Michiel de Hoon, Peter Cock, Tiago Antao, Eric Talevich, Bartek Wilczy´nski
A BioPython tutorial and cookbook which teaches computational molecular biology using free Python tools. A true example of legally free python books.
Modeling and Simulation in Python
Allen Downey
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. Taking a computational approach makes it possible to work with more realistic models than what you typically see in a first-year physics class, with the option to include features like friction and drag. A true example of legally free python books.
Modelling Creativity
Tom D. De Smedt
A blend of generative art, machine learning, NLP, algorithms and sentiment analysis. A true example of legally free python books.
Introduction to Scientific Computing in Python
Robert Johansson
Science has traditionally been divided into experimental and theoretical disciplines, but during the last several decades computing has emerged as a very important part of science. Scientific computing is often closely related to theory, but it also has many characteristics in common with experimental work. It is therefore often viewed as a new third branch of science. In most fields of science, computational work is an important complement to both experiments and theory, and nowadays a vast majority of both experimental and theoretical papers involve some numerical calculations, simulations or computer modeling.