cta quote button

Best Python Books to Master the Technology

Read More

How Much Does It Cost to Hire Web Developers in Ukraine?

Our pricing is completely transparent: you pay your engineers’ salaries and a flat monthly fee for our services. No hidden charges.

Read More

1. Programming Python: Powerful Object-Oriented Programming (2011)

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 in a clear and concise manner, with lots of examples that illustrate both correct usage and common idioms. Completely updated for version 3.x, Programming Python also delves into the language as a software development tool, with many code examples scaled specifically for that purpose.

Topics include:

  • Quick Python tour: Build a simple demo that includes data representation, object-oriented programming, object persistence, GUIs, and website basics
  • System programming: Explore system interface tools and techniques for command-line scripting, processing files and folders, running programs in parallel, and more
  • GUI programming: Learn to use Python’s tkinter widget library
  • Internet programming: Access client-side network protocols and email tools, use CGI scripts, and learn website implementation techniques
  • More ways to apply Python: Implement data structures, parse text-based information, interface with databases, and extend and embed Python

Author(s): Mark Lutz

2. Python Programming: An Introduction to Computer Science, 3rd Ed. (2016)

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.

Author(s): John Zelle

3. Python Pocket Reference: Python In Your Pocket (Pocket Reference (O’Reilly)) (2014)

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 written by Mark.

This fifth edition covers:

  • Built-in object types, including numbers, lists, dictionaries, and more
  • Statements and syntax for creating and processing objects
  • Functions and modules for structuring and reusing code
  • Python’s object-oriented programming tools
  • Built-in functions, exceptions, and attributes
  • Special operator overloading methods
  • Widely used standard library modules and extensions
  • Command-line options and development tools
  • Python idioms and hints
  • The Python SQL Database API

Author(s): Mark Lutz

4. Python: Programming: Your Step By Step Guide To Easily Learn Python in 7 Days (Python for Beginners, Python Programming for Beginners, Learn Python, Python Language) (2017)

Are You Ready To Learn Python Easily?

Learning Python Programming in 7 days is possible, although it might not look like it’s easy at first, especially if you are someone with meager experience in dealing with a programming language. As you learn, you will see that it is not that difficult to understand, and it becomes easier when you add patience, diligence, and discipline. This book has all the materials that you need in learning basic Python Programming. It is presented in easy to understand format – much of technical jargons were eliminated, although you might still find some, but they are the terms that you will likely (almost always) encounter when creating your codes. You will find no such trouble in understanding the terms, and how to do it properly. Samples are provided for you, and explanations are also presented so you won’t get lost and still have fun while learning. You will be glad that you have this book with you while learning Python. Discover many things that you can do with Python programming, and you might even start a new career.

Here’s What You’ll Learn From This Python For Beginners Book:

✓ Introduction ✓ Chapter 1: Welcome to the World of the Python ✓ Chapter 2: Python Syntax ✓ Chapter 3: Important Strings and Console Output ✓ Chapter 4: The Conditionals and Control Flow ✓ Chapter 5: Understanding Lists, Tuples, and Dictionaries ✓ Chapter 6: The Loops ✓ Chapter 7: Understanding the Functions ✓ Chapter 8: Coding a Full Program ✓ Chapter 9: Reserved Words and Functions ✓ and much more

What Are You Waiting For?

Start Coding Python Right Now!

Author(s): iCode Academy, Python Language

5. Python Crash Course: A Hands-On, Project-Based Introduction to Programming (2015)

Python Crash Course is a fast-paced, thorough introduction to Python that will have you writing programs, solving problems, and making things that work in no time.

In the first half of the book, you’ll learn about basic programming concepts, such as lists, dictionaries, classes, and loops, and practice writing clean and readable code with exercises for each topic. You’ll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you’ll put your new knowledge into practice with three substantial projects: a Space Invaders–inspired arcade game, data visualizations with Python’s super-handy libraries, and a simple web app you can deploy online.

As you work through Python Crash Course you’ll learn how to:
–Use powerful Python libraries and tools, including matplotlib, NumPy, and Pygal
–Make 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progresses
–Work with data to generate interactive visualizations
–Create and customize Web apps and deploy them safely online
–Deal with mistakes and errors so you can solve your own programming problems

If you’ve been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code!

Uses Python 2 and 3

Author(s): Eric Matthes

6. Learning Python, 5th Edition (2013)

Get a comprehensive, in-depth introduction to the core Python language with this hands-on book. Based on author Mark Lutz’s popular training course, this updated fifth edition will help you quickly write efficient, high-quality code with Python. It’s an ideal way to begin, whether you’re new to programming or a professional developer versed in other languages.

Complete with quizzes, exercises, and helpful illustrations, this easy-to-follow, self-paced tutorial gets you started with both Python 2.7 and 3.3— the latest releases in the 3.X and 2.X lines—plus all other releases in common use today. You’ll also learn some advanced language features that recently have become more common in Python code.

  • Explore Python’s major built-in object types such as numbers, lists, and dictionaries
  • Create and process objects with Python statements, and learn Python’s general syntax model
  • Use functions to avoid code redundancy and package code for reuse
  • Organize statements, functions, and other tools into larger components with modules
  • Dive into classes: Python’s object-oriented programming tool for structuring code
  • Write large programs with Python’s exception-handling model and development tools
  • Learn advanced Python tools, including decorators, descriptors, metaclasses, and Unicode processing

Author(s): Mark Lutz

7. Python Programming: An Introduction to Computer Science (2010)

This is the second edition of John Zelle’s Python Programming, updated for Python 3. This book is designed to be used as the primary textbook in a college-level first course in computing. It takes a fairly traditional approach, emphasizing problem solving, design, and programming as the core skills of computer science. However, these ideas are illustrated using a non-traditional language, namely Python.

Although Python is used as the language, teaching Python is not the main point of this book. Rather, Python is used to illustrate fundamental principles of design and programming that apply in any language or computing environment. In some places, I have purposely avoided certain Python features and idioms that are not generally found in other languages.

Author(s): John Zelle

8. Automate the Boring Stuff with Python: Practical Programming for Total Beginners (2015)

If you’ve ever spent hours renaming files or updating hundreds of spreadsheet cells, you know how tedious tasks like these can be. But what if you could have your computer do them for you?

In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to:
–Search for text in a file or across multiple files
–Create, update, move, and rename files and folders
–Search the Web and download online content
–Update and format data in Excel spreadsheets of any size
–Split, merge, watermark, and encrypt PDFs
–Send reminder emails and text notifications
–Fill out online forms

Step-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.

Don’t spend your time doing work a well-trained monkey could do. Even if you’ve never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python.

Note: The programs in this book are written to run on Python 3.

Author(s): Al Sweigart

9. Python Programming: Your Beginner’s Guide To Easily Learn Python in 7 Days (2017)

Are You Ready To Learn Python Easily?

Python is one of the most popular of all the computer programming languages, simply because it is one of the easiest to learn. It is an all-purpose language that has a range of different applications, such as: ¥ Web development ¥ Mathematical and Scientific Computing ¥ Graphical user interface for the desktop Python has a very clean syntax and short code which makes it ideal for the beginner. Not only that, Python is fun because, rather than spending all your time worrying about the syntax, you get to spend time thinking about what your code is going to do instead. Python is an old language, developed in the 1980’s and being released for the first time in 1991. It was developed because Guido van Rossum wanted to create a language that was easy to understand and that could access the Amoeba system he was working on. That led to Python, an interpreted and extensible language that was named after Monty Python’s Flying Circus for no reason other than the creator was a fan! Python is so much easier to write and to read than many other languages and is one of the most feature-packed. Benefits include: ¥ It’s free and its open source – anyone can use Python and anyone can make changes to the source code and distribute it for themselves. ¥ Portable – Python programs can move from one platform to another can be run without the need to make any changes ¥ Embeddable and Extensible – Python code can be combined with bits of another computer language to produce a high-performance code and scripting abilities which are not always available with other languages out of the box ¥ Interpreted Language – Python does a lot of jobs, like garbage collection, memory management and so on automatically. Also, when your code is run, it will automatically be converted into a code that is understood by your computer system ¥ Libraries – Python contains a lot of libraries with much of the code needed to perform common tasks and cut down on the amount of code you need to write ¥ Object-Oriented – because everything that is in Python is an object, it is far easier to solve complex problems – each can be broken down into smaller problems through the creation of objects. Python is backed up with a large active community who are constantly striving to improve the language for beginners and experts alike. Use this community as they are of invaluable help to you. If you are quite ready, we are going to look at the basics of Python programming now. First, I will show you how to install it on your computer and then we will go through the basic concepts. There are going to be plenty of examples for you to input into Python and try or yourself. This is the best way to learn so I urge you to get your Python environment set up and work along with this book – you will learn so much more than if you just read it. 

Here Is What You’ll Learn After Downloading This Python Programming Book:

✓ Introduction Chapter 1: Installing Python and Setting up Your Environment ✓ Chapter 2: Python Keywords, Identifiers, and Operators Chapter 3: Python Flow Control ✓ Chapter 4: Python Functions Chapter 5: Python Datatypes ✓ Chapter 6: Python Lists Chapter 7: Python Tuples ✓ Chapter 8: Python Strings Chapter 9: Python Sets ✓ Chapter 10: Python Objects and Classes Chapter 11: Python Dictionary ✓ Chapter 12: Python Glossary

What Are You Waiting For?

Start Coding Python Programming Right Now!

Author(s): iCode Academy

10. Python for Kids: A Playful Introduction To Programming (2012)

Python is a powerful, expressive programming language that’s easy to learn and fun to use! But books about learning to program in Python can be kind of dull, gray, and boring, and that’s no fun for anyone.

Python for Kids brings Python to life and brings you (and your parents) into the world of programming. The ever-patient Jason R. Briggs will guide you through the basics as you experiment with unique (and often hilarious) example programs that feature ravenous monsters, secret agents, thieving ravens, and more. New terms are defined; code is colored, dissected, and explained; and quirky, full-color illustrations keep things on the lighter side.

Chapters end with programming puzzles designed to stretch your brain and strengthen your understanding. By the end of the book you’ll have programmed two complete games: a clone of the famous Pong and “Mr. Stick Man Races for the Exit”—a platform game with jumps, animation, and much more.

As you strike out on your programming adventure, you’ll learn how to:
–Use fundamental data structures like lists, tuples, and maps
–Organize and reuse your code with functions and modules
–Use control structures like loops and conditional statements
–Draw shapes and patterns with Python’s turtle module
–Create games, animations, and other graphical wonders with tkinter

Why should serious adults have all the fun? Python for Kids is your ticket into the amazing world of computer programming.

For kids ages 10+ (and their parents)

The code in this book runs on almost anything: Windows, Mac, Linux, even an OLPC laptop or Raspberry Pi!

Author(s): Jason R. Briggs

11. Python for Everybody: Exploring Data in Python 3 (2016)

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. This book uses the Python 3 language. The earlier Python 2 version of this book is titled “Python for Informatics: Exploring Information”. There are free downloadable electronic copies of this book in various formats and supporting materials for the book at www.py4e.com. The course materials are available to you under a Creative Commons License so you can adapt them to teach your own Python course.

Author(s): Dr. Charles Russell Severance, Sue Blumenberg

12. The Self-Taught Programmer: The Definitive Guide to Programming Professionally (2017)

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 addition to helping you learn to program, I also cover the rest of the things you need to know to program professionally that classes and books don't teach you. "The Self-taught Programmer" is a roadmap, a guide to take you from writing your first Python program, to passing your first technical interview. I divided the book into five sections: 

1. Learn to program in Python 3 and build your first program. 
2. Learn Object-oriented programming and create a powerful Python program to get you hooked. 
3. Learn to use tools like Git, Bash, regular expressions and databases. Then use your new coding skills to build a web scraper. 
4. Study Computer Science fundamentals like data structures and algorithms.
5. Finish with tips for working with a team and landing a programming job. 

You CAN learn to program professionally. The path is there. Will you take it?

*NOTE This paperback version is in black and white. 

Author(s): Cory Althoff