100 Best Python Books of All Time

We've researched and ranked the best python books in the world, based on recommendations from world experts, sales data, and millions of reader ratings. Learn more

Featuring recommendations from Satya Nadella, Nassim Nicholas Taleb, Elon Musk, and 13 other experts.
1
Second edition of the best selling Python book in the world. A fast-paced, no-nonsense guide to programming in Python. This book teaches beginners the basics of programming in Python with a focus on real projects.

This is the second edition of the best selling Python book in the world. Python Crash Course, 2nd Edition is a straightforward introduction to the core of Python programming. Author Eric Matthes dispenses with the sort of tedious, unnecessary information that can get in the way of learning how to program, choosing instead to provide a foundation in general...
more

See more recommendations for this book...

2
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...
more

See more recommendations for this book...

3
Python's simplicity lets you become productive quickly, but this often means you aren't using everything it has to offer. With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.

Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside...
more

See more recommendations for this book...

4
Looking for complete instructions on manipulating, processing, cleaning, and crunching structured data in Python? The second edition of this hands-on guide--updated for Python 3.5 and Pandas 1.0--is packed with practical cases studies that show you how to effectively solve a broad set of data analysis problems, using Python libraries such as NumPy, pandas, matplotlib, and IPython.

Written by Wes McKinney, the main author of the pandas library, Python for Data Analysis also serves as a practical, modern introduction to scientific computing in Python for data-intensive...
more

See more recommendations for this book...

5

Learning Python

Portable, powerful, and a breeze to use, Python is the popular open source object-oriented programming language used for both standalone programs and scripting applications. Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. This edition of "Learning Python" puts you in the hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language. "Learning Python," Second Edition, offers programmers a comprehensive learning tool for... more

See more recommendations for this book...

6

Python Cookbook

If you need help writing programs in Python 3, or want to update older Python 2 code, this book is just the ticket. Packed with practical recipes written and tested with Python 3.3, this unique cookbook is for experienced Python programmers who want to focus on modern tools and idioms.

Inside, you’ll find complete recipes for more than a dozen topics, covering the core Python language as well as tasks common to a wide variety of application domains. Each recipe contains code samples you can use in your projects right away, along with a discussion about how and why the solution...
more

See more recommendations for this book...

8
Each item in Slatkin s "Effective Python" teaches a self-contained lesson with its own source code. This makes the book random-access: Items are easy to browse and study in whatever order the reader needs. I will be recommending "Effective Python" to students as an admirably compact source of mainstream advice on a very broad range of topics for the intermediate Python programmer. " Brandon Rhodes, software engineer at Dropbox and chair of PyCon 2016-2017" It s easy to start coding with Python, which is why the language is so popular. However, Python s unique strengths, charms, and... more

See more recommendations for this book...

9
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.

Through exercises in each chapter, you'll try out programming concepts as you learn them. Think Python is ideal for students at the high school or college level, as well as self-learners, home-schooled students, and...
more

See more recommendations for this book...

10
For many researchers, Python is a first-class tool mainly because of its libraries for storing, manipulating, and gaining insight from data. Several resources exist for individual pieces of this data science stack, but only with the Python Data Science Handbook do you get them all—IPython, NumPy, Pandas, Matplotlib, Scikit-Learn, and other related tools.

Working scientists and data crunchers familiar with reading and writing Python code will find this comprehensive desk reference ideal for tackling day-to-day issues: manipulating, transforming, and cleaning data; visualizing...
more
Recommended by Kirk Borne, and 2 others.

Kirk Borne✨🎉🌟Must see this >> Free #Python #DataScience Coding book series for #DataScientists ...via @DataScienceCtrl Go to https://t.co/To10VVZzIl ——————— #abdsc #BigData #MachineLearning #AI #DeepLearning #BeDataBrilliant #DataLiteracy https://t.co/Msuo1jiZSm (Source)

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
11
Master Python and become a programmer -- even if you never thought you could! This breakthrough book and CD can help practically anyone get started in programming. It's called "The Hard Way," but it's really quite simple. What's "hard" is this: it requires discipline, practice, and persistence. Zed A. Shaw teaches the Python programming language through a series of 52 brilliantly-crafted exercises -- all formatted consistently, and none longer than two pages (including "extra credit"). Just read each exercise, type in its sample code precisely (no copy-and-paste!), and make the programs run.... more
Recommended by Vicki Boykis, and 1 others.

Vicki BoykisHe goes through all of the building blocks that you need to master Python. It’s been updated for Python 3, which is very important as well. It’s very practical and down to earth, with about 50 to 60 exercises, and it’s written in a way that doesn’t feel overwhelming and that really allows you to go through all of them. (Source)

See more recommendations for this book...

12

Python Pocket Reference

Updated for both Python 3.4 and 2.7, this convenient pocket guide is the perfect on-the-job quick reference. You’ll find concise, need-to-know information on Python types and statements, special method names, built-in functions and exceptions, commonly used standard library modules, and other prominent Python tools. The handy index lets you pinpoint exactly what you need.

Written by Mark Lutz—widely recognized as the world’s leading Python trainer—Python Pocket Reference is an ideal companion to O’Reilly’s classic Python tutorials, Learning Python and Programming Python, also...
more

See more recommendations for this book...

13
Want to learn the Python language without slogging your way through how-to manuals? With Head First Python, you'll quickly grasp Python's fundamentals, working with the built-in data structures and functions. Then you'll move on to building your very own webapp, exploring database management, exception handling, and data wrangling. If you're intrigued by what you can do with context managers, decorators, comprehensions, and generators, it's all here. This second edition is a complete learning experience that will help you become a bonafide Python programmer in no time.
more

See more recommendations for this book...

14
Link to the GitHub Repository containing the code examples and additional material: https://github.com/rasbt/python-machi...

Many of the most innovative breakthroughs and exciting new technologies can be attributed to applications of machine learning. We are living in an age where data comes in abundance, and thanks to the self-learning algorithms from the field of machine learning, we can turn this data into knowledge. Automated speech recognition on our smart phones, web search...
more

See more recommendations for this book...

15

Programming Python

If you've mastered Python's fundamentals, you're ready to start using it to get real work done. Programming Python will show you how, with in-depth tutorials on the language's primary application domains: system administration, GUIs, and the Web. You'll also explore how Python is used in databases, networking, front-end scripting layers, text processing, and more. This book focuses on commonly used tools and libraries to give you a comprehensive understanding of Python’s many roles in practical, real-world programming.

You'll learn language syntax and programming techniques...
more

See more recommendations for this book...

16

Deep Learning with Python

Deep learning is applicable to a widening range of artificial intelligence problems, such as image classification, speech recognition, text classification, question answering, text-to-speech, and optical character recognition. It is the technology behind photo tagging systems at Facebook and Google, self-driving cars, speech recognition systems on your smartphone, and much more.

In particular, Deep learning excels at solving machine perception problems: understanding the content of image data, video data, or sound data. Here's a simple example: say you have a large collection of...
more

See more recommendations for this book...

17
By taking you through the development of a web application from beginning to end, this book demonstrates the practical advantages of test-driven development with Python. You’ll learn everything from the basics of database integration and the use of JavaScript to browser-automation tools like Selenium, and advanced topics such as NoSQL, Web Sockets, and async programming.

Ideal for beginners, this book teaches a development methodology that leads to peace of mind, cleaner code, and better web apps.
less

See more recommendations for this book...

18
To really learn data science, you should not only master the tools--data science libraries, frameworks, modules, and toolkits--but also understand the ideas and principles underlying them. Updated for Python 3.6, this second edition of Data Science from Scratch shows you how these tools and algorithms work by implementing them from scratch.

If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with the hacking skills you need to get started as a data...
more

Thorsten HellerThe Best #book to Start your #DataScience Journey - Towards #DataScience https://t.co/D8PlkkSxw6 by @benthecoder1 (Source)

See more recommendations for this book...

19
Take full creative control of your web applications with Flask, the Python-based microframework. With the second edition of this hands-on book, you'll learn Flask from the ground up by developing a complete, real-world application created by author Miguel Grinberg. This refreshed edition accounts for important technology changes that have occurred in the past three years.

Explore the framework's core functionality, and learn how to extend applications with advanced web techniques such as database migrations and an application programming interface. The first part of each chapter...
more

See more recommendations for this book...

20
Through a series of recent breakthroughs, deep learning has boosted the entire field of machine learning. Now, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.

By using concrete examples, minimal theory, and two production-ready Python frameworks-scikit-learn and TensorFlow-author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You'll learn a range of techniques, starting with simple...

more
Recommended by Mark Tabladillo, and 1 others.

Mark TabladilloBook to Start You on Machine Learning - KDnuggets https://t.co/19fdX59b0d This book is “Hands-On Machine Learning with Scikit-Learn & TensorFlow”. each new revision has become an even better version of one of the best in-depth resources to learn Machine Learning by doing. https://t.co/ujyUH3xU3e (Source)

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
21

Python for Kids

Python for Kids is a lighthearted introduction to the Python language and programming in general, complete with illustrations and kid-friendly examples. Jason Briggs, author of the popular online tutorial "Snake Wrangling for Kids," begins with the basics of how to install Python and write simple commands. In bite-sized chapters, he instructs readers on the essentials of Python, including how to use Python's extensive standard library, the difference between strings and lists, and using for-loops and while-loops. By the end of the book, readers have built a game and created drawings... more

See more recommendations for this book...

22
Python for Everybody is designed to introduce students to programming and software development through the lens of exploring data. You can think of the Python programming language as your tool to solve data problems that are beyond the capability of a spreadsheet. Python is an easy to use and easy to learn programming language that is freely available on Macintosh, Windows, or Linux computers. So once you learn Python you can use it for the rest of your career without needing to purchase any software. There are free downloadable electronic copies of this book in various formats and supporting... more

See more recommendations for this book...

23
Machine learning has become an integral part of many commercial applications and research projects, but this field is not exclusive to large companies with extensive research teams. If you use Python, even as a beginner, this book will teach you practical ways to build your own machine learning solutions. With all the data available today, machine learning applications are limited only by your imagination.

You'll learn the steps necessary to create a successful machine-learning application with Python and the scikit-learn library. Authors Andreas Muller and Sarah Guido focus on the...
more
Recommended by Francesco Marconi, and 1 others.

Francesco MarconiTop programming languages ranked by its annual search engine popularity. Python has gained momentum because of its importance to machine learning development. At @WSJ we are using it to build tools for journalists. Tip: this is a great book for anyone who wants to get started! https://t.co/ZsHjqB5gvC (Source)

See more recommendations for this book...

25
This book introduces students with little or no prior programming experience to the art of computational problem solving using Python and various Python libraries, including PyLab. It provides students with skills that will enable them to make productive use of computational techniques, including some of the tools and techniques of data science for using computation to model and interpret data. The book is based on an MIT course (which became the most popular course offered through MIT's OpenCourseWare) and was developed for use not only in a conventional classroom but in in a massive open... more

See more recommendations for this book...

26

Natural Language Processing with Python

This book offers a highly accessible introduction to natural language processing, the field that supports a variety of language technologies, from predictive text and email filtering to automatic summarization and translation. With it, you'll learn how to write Python programs that work with large collections of unstructured text. You'll access richly annotated datasets using a comprehensive range of linguistic data structures, and you'll understand the main algorithms for analyzing the content and structure of written communication.

Packed with examples and exercises, Natural...
more

See more recommendations for this book...

27
Easy to understand and fun to read, this updated edition of Introducing Python is ideal for beginning programmers as well as those new to the language. Author Bill Lubanovic takes you from the basics to more involved and varied topics, mixing tutorials with cookbook-style code recipes to explain concepts in Python 3. End-of-chapter exercises help you practice what you've learned.

You'll gain a strong foundation in the language, including best practices for testing, debugging, code reuse, and other development tips. This book also shows you how to use Python for applications...
more

See more recommendations for this book...

28

Uncover modern Python with this guide to Python data structures, design patterns, and effective object-oriented techniques

Key Features In-depth analysis of many common object-oriented design patterns that are more suitable to Python's unique style Learn the latest Python syntax and libraries Explore abstract design patterns and implement them in Python 3.8 Book Description

Object-oriented programming (OOP) is a popular design paradigm in which data and behaviors are encapsulated in such a way that they can be manipulated together. This third edition of...

more

See more recommendations for this book...

29

Problem Solving with Algorithms and Data Structures Using Python

THIS TEXTBOOK is about computer science. It is also about Python. However, there is much more. The study of algorithms and data structures is central to understanding what computer science is all about. Learning computer science is not unlike learning any other type of difficult subject matter. The only way to be successful is through deliberate and incremental exposure to the fundamental ideas. A beginning computer scientist needs practice so that there is a thorough understanding before continuing on to the more complex parts of the curriculum. In addition, a beginner needs to be given the... more

See more recommendations for this book...

30

The Quick Python Book

This revision of Manning's popular The Quick Python Book offers a clear, crisp introduction to the elegant Python programming language and its famously easy-to-read syntax.

After exploring Python's syntax, control flow, and basic data structures, the book shows how to create, test, and deploy full applications and larger code libraries. It addresses established Python features as well as the advanced object-oriented options available in Python 3. This edition covers 5 years worth of minor updates to the language, and the last 5 chapters have been reworked to be data based project...
more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
31

A Byte of Python

An introduction to Python programming for beginners. less

See more recommendations for this book...

32

Dive Into Python

Whether you're an experienced programmer looking to get into Python or grizzled Python veteran who remembers the days when you had to import the string module, Dive Into Python is your 'desert island' Python book.

-- Joey deVilla, Slashdot contributor

As a complete newbie to the language...I constantly had those little thoughts like, 'this is the way a programming language should be taught.'

-- Lasse Koskela, JavaRanch

Apress has been profuse in both its quantity and quality of releasesand (this book is) surely worth adding to your technical...
more

See more recommendations for this book...

34
When it comes to creating powerful and effective hacking tools, Python is the language of choice for most security analysts. But just how does the magic happen?

In Black Hat Python, the latest from Justin Seitz (author of the best-selling Gray Hat Python), you'll explore the darker side of Python's capabilities writing network sniffers, manipulating packets, infecting virtual machines, creating stealthy trojans, and more. You'll learn how to:


Create a trojan command-and-control using GitHub
Detect sandboxing and automate common malware tasks,...
more

See more recommendations for this book...

35
In Cracking Codes with Python, you'll learn how to program in Python while making and breaking ciphers, which are used to encrypt secret messages. (No programming experience required!).
After a quick crash course in programming, you'll make, test, and hack classic cipher programs. You'll begin with simple programs like the Caesar cipher and then work your way up to public key cryptography and the RSA cipher, which is used for modern secure data transmissions.
Each program comes with the full code and a line-by-line explanation of how things work. By book's end, you'll...
more

See more recommendations for this book...

36

Dive Into Python 3

Mark Pilgrim's Dive Into Python 3 is a hands-on guide to Python 3 and its differences from Python 2. As in the original book, Dive Into Python, each chapter starts with a real, complete code sample, proceeds to pick it apart and explain the pieces, and then puts it all back together in a summary at the end.

This book includes:

Example programs completely rewritten to illustrate powerful new concepts now available in Python 3: sets, iterators, generators, closures, comprehensions, and much more A detailed case study of porting a major...
more

See more recommendations for this book...

37
Violent Python shows you how to move from a theoretical understanding of offensive computing concepts to a practical implementation. Instead of relying on another attacker's tools, this book will teach you to forge your own weapons using the Python programming language. This book demonstrates how to write Python scripts to automate large-scale network attacks, extract metadata, and investigate forensic artifacts. It also shows how to write code to intercept and analyze network traffic using Python, craft and spoof wireless frames to attack wireless and Bluetooth devices, and how to... more

See more recommendations for this book...

38
"Beginning Python: From Novice to Professional" is the most comprehensive book on the Python ever written. Based on "Practical Python," this newly-revised book is both an introduction and practical reference for a swath of Python-related programming topics, including addressing language internals, database integration, network programming, and web services. Advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.

Ten different projects illustrate the concepts introduced in the book. You will learn how to create a P2P file-sharing...
more

See more recommendations for this book...

39
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,...
more

See more recommendations for this book...

40
This third edition of John Zelle's Python Programming continues the tradition of updating the text to reflect new technologies while maintaining a time-tested approach to teaching introductory computer science. An important change to this edition is the removal of most uses of eval and the addition of a discussion of its dangers. In our increasingly connected world, it's never too early to begin considering computer security issues. This edition also uses several new graphics examples, developed throughout chapters 4-12. less

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
41
If you're an experienced Python programmer, High Performance Python will guide you through the various routes of code optimization. You'll learn how to use smarter algorithms and leverage peripheral technologies, such as numpy, cython, cpython, and various multi-threaded and multi-node strategies.

There's a lack of good learning and reference material available if you want to learn Python for highly computational tasks. Because of it, fields from physics to biology and systems infrastructure to data science are hitting barriers. They need the fast prototyping nature of...
more

See more recommendations for this book...

42

Python for Informatics

Exploring Information

This book is designed to introduce students to programming and computational thinking through the lens of exploring data. You can think of Python as your tool to solve problems that are far beyond the capability of a spreadsheet. It is an easy-to-use and easy-to learn programming language that is freely available on Windows, Macintosh, and Linux computers. There are free downloadable copies of this book in various electronic formats and a self-paced free online course where you can explore the course materials. All the supporting materials for the book are available under open and remixable... more

See more recommendations for this book...

43

Core Python Programming

Praise for Core Python Programming "The long-awaited second edition of Wesley Chun's Core Python Programming proves to be well worth the wait--its deep and broad coverage and useful exercises will help readers learn and practice good Python." --Alex Martelli, author of Python in a Nutshell and editor of Python Cookbook "There has been lot of good buzz around Wesley Chun's Core Python Programming. It turns out that all the buzz is well earned. I think this is the best book currently available for learning Python. I would recommend Chun's book over... more

See more recommendations for this book...

44

Python in a Nutshell

Demonstrates the programming language's strength as a Web development tool, covering syntax, data types, built-ins, the Python standard module library, and real world examples less

See more recommendations for this book...

45
I wasn't smart enough to learn a computer language like Python-until I got smart about how to learn it.I was smart enough to earn an honors degree in philosophy from Harvard, but an aptitude test told me to avoid computer programming. I'm sure it was right. But then I designed a learning system for myself that quadrupled my aptitude for learning computer languages. It worked so well for me that I've used it to teach coding to grandmothers, cab drivers, musicians, and 50,000 other newbies.

"Mark Myers' method of getting what can be...difficult information into a format...
more

See more recommendations for this book...

46
The Hitchhiker's Guide to Python takes the journeyman Pythonista to true expertise. More than any other language, Python was created with the philosophy of simplicity and parsimony. Now 25 years old, Python has become the primary or secondary language (after SQL) for many business users. With popularity comes diversity--and possibly dilution.

This guide, collaboratively written by over a hundred members of the Python community, describes best practices currently used by package and application developers. Unlike other books for this audience, The Hitchhiker's Guide is...
more

See more recommendations for this book...

47
An algorithm is nothing more than a step-by-step procedure for solving a problem. The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.

Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply...
more

See more recommendations for this book...

48
What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.

Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of...
more
Recommended by Ana Bell, and 1 others.

Ana BellIt gets you to use your imagination to virtually build a computer. It’s easy to read, you can lie down on the couch and enjoy it—it’s not so much of a textbook. It demystifies the magic of a computer and what it is. (Source)

See more recommendations for this book...

49
Even bad code can function. But if code isn t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code on the fly into a book that will instill within you the values of a software craftsman and...
more
Recommended by Ana Bell, and 1 others.

Ana BellThis book is going to show you how to write code that is readable by yourself in the future, or by somebody else. You can sit on the couch and read it; you don’t need to code. You can actually enjoy it if you don’t know how to program at all. (Source)

See more recommendations for this book...

50
You Will Learn Python 3! Zed Shaw has perfected the world's best system for learning Python 3. Follow it and you will succeed--just like the millions of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Python 3 the Hard Way, you'll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn how a computer works; what good programs look like;... more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
51

Elements of Programming Interviews in Python

The Insiders' Guide

This is the Python version of our book. See the website for links to the C++ and Java version.Have you ever...


Wanted to work at an exciting futuristic company?
Struggled with an interview problem thatcould have been solved in 15 minutes?
Wished you could study real-world computing problems?
If so, you need to read Elements of Programming Interviews (EPI).

EPI is your comprehensive guide to interviewing for software development roles.

The core of EPI is a collection of over 250 problems with...
more

See more recommendations for this book...

52
Want to tap the power behind search rankings, product recommendations, social bookmarking, and online matchmaking? This fascinating book demonstrates how you can build Web 2.0 applications to mine the enormous amount of data created by people on the Internet. With the sophisticated algorithms in this book, you can write smart programs to access interesting datasets from other web sites, collect data from users of your own applications, and analyze and understand the data once you've found it.

Programming Collective Intelligence takes you into the world of machine learning...
more

See more recommendations for this book...

55
(2nd Edition: Covers Object Oriented Programming)
Master Python Programming with a unique Hands-On Project


Have you always wanted to learn computer programming but are afraid it'll be too difficult for you? Or perhaps you know other programming languages but are interested in learning the Python language fast?

This book is for you. You no longer have to waste your time and money learning Python from lengthy books, expensive online courses or complicated Python tutorials.

What this book offers...

Python for...
more

See more recommendations for this book...

56
"Hellmann's writing has become an indispensable resource for me and many others as it fills a critical gap in Python Documentation with examples." - Jesse Noller, Python Core Developer and PSF Board Member Master the Powerful Python Standard Library through Real Code Examples The Python Standard Library contains hundreds of modules for interacting with the operating system, interpreter, and Internet-all extensively tested and ready to jump-start your application development. The Python Standard Library by Example (2 Volume Set) introduces virtually... more

See more recommendations for this book...

57

Two Scoops of Django

Best Practices for Django 1.8

This book is chock-full of material that will help you with your Django projects.

We’ll introduce you to various tips, tricks, patterns, code snippets, and techniques that we’ve picked up over the years.
less

See more recommendations for this book...

58

Doing Math with Python

In Doing Math with Python you'll learn to how to use the Python programming language as a tool to delve into math concepts. Python is easy to learn, and it's perfect for exploring topics like statistics, geometry, probability, and calculus. You’ll learn to write programs to find derivatives, solve equations graphically, manipulate algebraic expressions, even examine projectile motion.

Rather than crank through tedious calculations by hand, you'll learn how to use Python functions and modules to handle the number crunching while you focus on the principles behind the math. Exercises...
more

See more recommendations for this book...

59

The Hacker's Guide to Python

An indispensable collection of practical tips and real-world advice for tackling common Python problems and taking your code to the next level. Features interviews with high-profile Python developers who share their tips, tricks, best practices, and real-world advice gleaned from years of experience.

The Hacker's Guide to Python will teach you how to fine tune your Python code and give you a deeper understanding of how the language works under the hood. This essential guide distills years of Python experience into a handy collection of general advice and specific tips...
more

See more recommendations for this book...

60
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...
more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
61

Two Scoops of Django

Best Practices for Django 1.5

We'll introduce you to various tips, tricks, patterns, code snippets, and techniques that we've picked up over the years.

This book is great for:

Beginners who have just finished the Django tutorial.

Developers with intermediate knowledge of Django who want to improve their Django projects.
less

See more recommendations for this book...

62
The Insider's Best-Practice Guide to Rapid PyQt 4 GUI Development Whether you're building GUI prototypes or full-fledged cross-platform GUI applications with native look-and-feel, PyQt 4 is your fastest, easiest, most powerful solution. Qt expert Mark Summerfield has written the definitive best-practice guide to PyQt 4 development.

With Rapid GUI Programming with Python and Qt you'll learn how to build efficient GUI applications that run on all major operating systems, including Windows, Mac OS X, Linux, and many versions of Unix, using the same source code for all...
more

See more recommendations for this book...

63
Do less work when testing your Python code, but be just as expressive, just as elegant, and just as readable. The pytest testing framework helps you write tests quickly and keep them readable and maintainable - with no boilerplate code. Using a robust yet simple fixture model, it's just as easy to write small tests with pytest as it is to scale up to complex functional testing for applications, packages, and libraries. This book shows you how.

For Python-based projects, pytest is the undeniable choice to test your code if you're looking for a full-featured, API-independent,...
more

See more recommendations for this book...

64
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...
more

See more recommendations for this book...

65

Deep Learning

An introduction to a broad range of topics in deep learning, covering mathematical and conceptual background, deep learning techniques used in industry, and research perspectives.

Deep learning is a form of machine learning that enables computers to learn from experience and understand the world in terms of a hierarchy of concepts. Because the computer gathers knowledge from experience, there is no need for a human computer operator to formally specify all the knowledge that the computer needs. The hierarchy of concepts allows the computer to learn complicated concepts by...
more

Elon MuskWritten by three experts in the field, Deep Learning is the only comprehensive book on the subject. (Source)

Nassim Nicholas TalebVery clear exposition, does the math without getting lost in the details. Although many of the concepts of the introductory first 100 pages can be found elsewhere, they are presented with remarkable cut-to-the-chase clarity. (Source)

Satya NadellaElon Musk and Facebook AI chief Yann LeCun have praised this textbook on one of software’s most promising frontiers. After its publication, Microsoft signed up coauthor Bengio, a pioneer in machine learning, as an adviser (Source)

See more recommendations for this book...

67
Expand your Python skills by working with data structures and algorithms in a refreshing context—through an eye-opening exploration of complexity science. Whether you’re an intermediate-level Python programmer or a student of computational modeling, you’ll delve into examples of complex systems through a series of exercises, case studies, and easy-to-understand explanations.

You’ll work with graphs, algorithm analysis, scale-free networks, and cellular automata, using advanced features that make Python such a powerful language. Ideal as a text for courses on Python programming and...
more

See more recommendations for this book...

68
I am a self-taught programmer. After a year of self-study, I learned to program well enough to land a job as a software engineer II at eBay. Once I got there, I realized I was severely under-prepared. I was overwhelmed by the amount of things I needed to know but hadn't learned yet. My journey learning to program, and my experience at my first job as a software engineer were the inspiration for this book.

This book is not just about learning to program; although you will learn to code. If you want to program professionally, it is not enough to learn to code; that is why, in...
more

See more recommendations for this book...

69
Updated and Expanded for Python 3

It's easy to start developing programs with Python, which is why the language is so popular. However, Python's unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up.

This second edition of Effective Python will help you master a truly "Pythonic" approach to programming, harnessing Python's full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyers' best-selling Effective...
more

See more recommendations for this book...

70
Already know Python but want to learn more? A lot more? Dive into a variety of topics used in practice for real-world applications. Covers regular expressions, Internet/network programming, GUIs, SQL/databases/ORMs, threading, and Web development. Learn about contemporary development trends such as Google+, Twitter, MongoDB, OAuth, Python 3 migration, and Java/Jython. Presents brand new material on Django, Google App Engine, CSV/JSON/XML, and Microsoft Office. Includes Python 2 and 3 code samples to get you started right away! Provides code snippets, interactive examples, and practical... more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
72

The Complete Monty Python's Flying Circus: All the Words

Volume 1

The complete scripts from the four Monty Python series, first shown on BBC television between 1969 and 1974, have been collected in two companion volumes.

Characters' names, often not spoken, are given as in the original scripts, along with the names of the actual performer added on their first appearance in each sketch.

This first volume contains twenty-three classic episodes, featuring some of the most entertaining writing to have gone into television anywhere. The minister of silly walks, the dead parrot, banter in a cheese shop - here is every silly, satirical skit,...
more

See more recommendations for this book...

73
Summary

Classic Computer Science Problems in Python deepens your knowledge of problem-solving techniques from the realm of computer science by challenging you with time-tested scenarios, exercises, and algorithms. As you work through examples in search, clustering, graphs, and more, you'll remember important things you've forgotten and discover classic solutions to your "new" problems!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

...
more

See more recommendations for this book...

74

Data Structures and Algorithms in Python

Based on the authors' market leading data structures books in Java and C++, this book offers a comprehensive, definitive introduction to data structures in Python by authoritative authors. Data Structures and Algorithms in Python is the first authoritative object-oriented book available for Python data structures. Designed to provide a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation, the text will maintain the same general structure as Data Structures and Algorithms in Java and Data Structures and... more

See more recommendations for this book...

76
To guide readers through the new scripting language, Python, this book discusses every aspect of client and server programming. And as Python begins to replace Perl as a favorite programming language, this book will benefit scripters and serious application developers who want a feature-rich, yet simple language, for deploying their products.

The text explains multitasking network servers using several models, including forking, threading, and non-blocking sockets. Furthermore, the extensive examples demonstrate important concepts and practices, and provide a cadre of...
more

See more recommendations for this book...

77
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques.

The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner. The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real...
more

See more recommendations for this book...

78

The Definitive Guide to Django

Web Development Done Right

Django, the Pythonbased equivalent to the Ruby on Rails web development framework, is hottest topics in web development. In "The Definitive Guide to Django: Web Development Done Right," Adrian Holovaty, one of Django's creators, and Django lead developer Jacob KaplanMoss show you how they use this framework to create awardwinning web sites. Over the course of three parts, they guide you through the creation of a web application reminiscent of chicagocrime.org.

The first part of the book introduces Django fundamentals like installation and configuration. You'll learn about creating...
more

See more recommendations for this book...

79
Hacking Secret Ciphers 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.

The full book can be found online here:
more

See more recommendations for this book...

80
Description

If you are new to programming with Python and are looking for a solid introduction, this is the book for you. Developed by computer science instructors, books in the For the absolute beginner series teach the principles of programming through simple game creation. You will acquire the skills that you need for more practical Python programming applications and you will learn how these skills can be put to use in real-world scenarios. Best of all, by the time you finish this book you will be able to apply the basic principles you've learned to the next...
more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
81
The "Writing Idiomatic Python" book is finally here! Chock full of code samples, you'll learn the "Pythonic" way to accomplish common tasks. Each idiom comes with a detailed description, example code showing the "wrong" way to do it, and code for the idiomatic, "Pythonic" alternative. *This version of the book is for Python 2.7.3+. There is also a Python 3.3+ version available.* "Writing Idiomatic Python" contains the most common and important Python idioms in a format that maximizes identification and understanding. Each idiom is presented as a recommendation to write some commonly used... more

See more recommendations for this book...

82
Winner of the 2014 Jolt Award for "Best Book" "Whether you are an experienced programmer or are starting your career, Python in Practice is full of valuable advice and example to help you improve your craft by thinking about problems from different perspectives, introducing tools, and detailing techniques to create more effective solutions." --Doug Hellmann, Senior Developer, DreamHost If you're an experienced Python programmer, Python in Practice will help you improve the quality, reliability, speed, maintainability, and usability of all your Python... more

See more recommendations for this book...

83
The author demonstrates how to write code that takes full advantage of Python 3's features and idioms. It brings together all the knowledge needed to write any program, use any standard or third-party Python 3 library, and create new library modules of your own. less

See more recommendations for this book...

84

Pro Django

Django is the leading Python web application development framework. Learn how to leverage the Django web framework to its full potential in this advanced tutorial and reference. Endorsed by Django, Pro Django more or less picks up where The Definitive Guide to Django left off and examines in greater detail the unusual and complex problems that Python web application developers can face and how to solve them.


Provides in-depth information about advanced tools and techniques available in every Django installation Runs the gamut from the theory of Django's...
more

See more recommendations for this book...

85
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. less

See more recommendations for this book...

86
WARNING! To avoid buying counterfeit on Amazon, click on "See All Buying Options" and choose "Amazon.com" and not a third-party seller.

Concise and to the point — the book can be read during a week. During that week, you will learn almost everything modern machine learning has to offer. The author and other practitioners have spent years learning these concepts.

Companion wiki — the book has a continuously updated wiki that extends some book chapters with additional information: Q&A, code snippets, further reading, tools, and other relevant resources.
more
Recommended by Kirk Borne, and 1 others.

Kirk BorneRecent top-selling books in #AI & #MachineLearning: https://t.co/Ij9I7SzR4d ————— #BigData #DataScience #DataMining #Algorithms #PredictiveAnalytics #Python ————— ...in the TOP 10: 1)The Hundred-Page ML Book: https://t.co/dQ7nP6gwP0 2)Hands-on ML with...: https://t.co/Y0Iz3GbtGP https://t.co/72rAFN1FwW (Source)

See more recommendations for this book...

87

The Complete Monty Python's Flying Circus

All the Words, Vol. 2

The complete scripts from the four Monty Python series, first shown on BBC television between 1969 and 1974, have been collected in two companion volumes.

Characters' names, often not spoken, are given as in the original scripts, along with the names of the actual performer added on their first appearance in each sketch.

This second volume contains twenty-two classic episodes, featuring some of the most entertaining writing to have gone into television anywhere. The minister of silly walks, the dead parrot, banter in a cheese shop - here is every silly, satirical skit,...
more

See more recommendations for this book...

88
The book serves as a first introduction to computer programming of scientific applications, using the high-level Python language. The exposition is example- and problem-oriented, where the applications are taken from mathematics, numerical calculus, statistics, physics, biology, and finance. The book teaches "Matlab-style" and procedural programming as well as object-oriented programming. High school mathematics is a required background, and it is advantageous to study classical and numerical one-variable calculus in parallel with reading this book. Besides learning how to program computers,... more

See more recommendations for this book...

89
Table of Contents: goo.gl/VLEUca
Sample Chapter: goo.gl/8AEcYk
Source Code: goo.gl/L8Xxdt

It is the Python version of "Data Structures and Algorithms Made Easy".

The sample chapter should give you a very good idea of the quality and style of our book. In particular, be sure you are comfortable with the level and with our Python coding style.

This...
more

See more recommendations for this book...

90

Python in easy steps

Python is a freely available programming language that makes solving a computer problem almost as easy as writing out one's thoughts about the solution. Python in Easy Steps covers everything the reader needs to know to start programming with Python. This easy-to-follow guide is the perfect companion for fast and productive learning. Designed to save time and guaranteed to give users value for their money, this successful series is written in simple, jargon-free style with helpful graphics. Each chapter takes readers through Python’s functions and uses step by step, and every page is... more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.
91
If it feels like your dreams and passions are suffocating and you don’t know why—you might be dealing with the spirit of python.In the natural world pythons have an interesting way of killing their prey. They constrict it until it can no longer breathe, literally suffocating the life out of its veins. In the spirit realm the python spirit acts in the same manner. It comes to put limits on you. It comes to quiet your voice and kill your dreams. It creeps into your life and, slowly but surely, suffocates your zeal for praising and worshiping God.
New York Times best-selling...
more

See more recommendations for this book...

92
The financial industry has adopted Python at a tremendous rate recently, with some of the largest investment banks and hedge funds using it to build core trading and risk management systems. This hands-on guide helps both developers and quantitative analysts get started with Python, and guides you through the most important aspects of using Python for quantitative finance.

Using practical examples through the book, author Yves Hilpisch also shows you how to develop a full-fledged framework for Monte Carlo simulation-based derivatives and risk analytics, based on a large, realistic...
more

See more recommendations for this book...

93
Build software that combines Python's expressivity with the performance and control of C (and C++). It's possible with Cython, the compiler and hybrid programming language used by foundational packages such as NumPy, and prominent in projects including Pandas, h5py, and scikits-learn. In this practical guide, you'll learn how to use Cython to improve Python's performance--up to 3000x-- and to wrap C and C++ libraries in Python with ease.

Author Kurt Smith takes you through Cython's capabilities, with sample code and in-depth practice exercises. If you're just starting with Cython,...
more

See more recommendations for this book...

94
Making Games with Python & Pygame is a programming book that covers the Pygame game library for the Python programming language. Each chapter gives you the complete source code for a new game and teaches the programming concepts from these examples. The book is available under a Creative Commons license and can be downloaded in full for free from http: //inventwithpython.com/pygame This book was written to be understandable by kids as young as 10 to 12 years old, although it is great for anyone of any age who... more

See more recommendations for this book...

95

Python High Performance

Python is a versatile language that has found applications in many industries. The clean syntax, rich standard library, and vast selection of third-party libraries make Python a wildly popular language.

Python High Performance is a practical guide that shows how to leverage the power of both native and third-party Python libraries to build robust applications.

The book explains how to use various profilers to find performance bottlenecks and apply the correct algorithm to fix them. The reader will learn how to effectively use NumPy and Cython to speed up numerical code....
more

See more recommendations for this book...

96
An updated guide to programming your own Raspberry Pi projectsLearn to create inventive programs and fun games on your powerful Raspberry Pi--with no programming experience required. This practical book has been revised to fully cover the new Raspberry Pi 2, including upgrades to the Raspbian operating system. Discover how to configure hardware and software, write Python scripts, create user-friendly GUIs, and control external electronics. DIY projects include a hangman game, RGB LED controller, digital clock, and RasPiRobot complete with an ultrasonic rangefinder.


Updated...
more

See more recommendations for this book...

97
"Computer programming is a powerful tool for children to 'learn learning,' that is, to learn the skills of thinking and problem-solving...Children who engage in programming transfer that kind of learning to other things."--Nicholas Negroponte, the man behind the One Laptop Per Child project that hopes to put a computer in the hands of every child on earth, January 2008

Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great...
more

See more recommendations for this book...

99
As Python continues to grow in popularity, projects are becoming larger and more complex. Many Python developers are now taking an interest in high-level software architecture patterns such as hexagonal/clean architecture, event-driven architecture, and strategic patterns prescribed by domain-driven design (DDD). But translating those patterns into Python isn't always straightforward.

With this practical guide, Harry Percival and Bob Gregory from MADE.com introduce proven architectural design patterns to help Python developers manage application complexity. Each pattern is...
more

See more recommendations for this book...

Don't have time to read the top Python books of all time? Read Shortform summaries.

Shortform summaries help you learn 10x faster by:

  • Being comprehensive: you learn the most important points in the book
  • Cutting out the fluff: you focus your time on what's important to know
  • Interactive exercises: apply the book's ideas to your own life with our educators' guidance.