Buy used
USD 28.72
FREE delivery 19 August - 10 September on your first order to UK or Ireland. Details
Used: Very Good | Details
Condition: Used: Very Good
Comment: Gently used. We ship worldwide.
Usually dispatched within 7 to 8 days
Added to

Sorry, there was a problem.

There was an error retrieving your Wish Lists. Please try again.

Sorry, there was a problem.

List unavailable.
Other sellers on Amazon
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

  • Learning Python 5ed

Follow the authors

Follow to get new release updates, special offers (including promotional offers), and improved recommendations.
Something went wrong. Please try your request again later.

Learning Python 5ed

4.5 out of 5 stars (1,890)

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

There is a newer edition of this item:


From the brand


From the Publisher

52

Who Uses Python Today?

At this writing, the best estimate anyone can seem to make of the size of the Python user base is that there are roughly 1 million Python users around the world today (plus or minus a few). This estimate is based on various statistics, like download rates, web statistics, and developer surveys. Because Python is open source, a more exact count is difficult - there are no license registrations to tally. Moreover, Python is automatically included with Linux distributions, Macintosh computers, and a wide range of products and hardware, further clouding the user base picture

  • Google
  • YouTube
  • Dropbox
  • Raspberry Pi
  • Industrial Light & Magic, Pixar
  • BitTorrent
  • EVE Online
  • Thousands more

Why do People Use Python?

Because there are many programming languages available today, this is the usual first question of newcomers. Given that there are roughly 1 million Python users out there at the moment, there really is no way to answer this question with complete accuracy; the choice of development tools is sometimes based on unique constraints or personal preference.

But after teaching Python to roughly 260 groups and over 4,000 students during the last 16 years, I have seen some common themes emerge. The primary factors cited by Python users seem to be these:

  • Software quality
  • Developer productivity
  • Program portability
  • Support libraries
  • Component integration
  • Enjoyment

Product description

About the Author

Mark Lutz is a leading Python trainer, the author of Python&;s earliest and best-selling texts, and a pioneering figure in the Python world.

Mark is the author of the three O&;Reilly books:
Learning Python, Programming Python, and Python Pocket Reference, all currently in fourth or fifth editions. He has been using and promoting Python since 1992, started writing Python books in 1995, and began teaching Python classes in 1997. As of Spring 2013, Mark has instructed 260 Python training sessions, taught roughly 4,000 students in live classes, and written Python books that have sold 400,000 units and been translated to at least a dozen languages.

Together, his two decades of
Python efforts have helped to establish it as one of the most widely used programming languages in the world today. In addition, Mark has been in the software field for 30 years. He holds BS and MS degrees in computer science from the University of Wisconsin where he explored implementations of the Prolog language, and over his career has worked as a professional software developer on compilers, programming tools, scripting applications, and assorted client/server systems.

Mark maintains a training website (
http://learning-python.com) and an additional book support site on the Web (http://www.rmi.net/~lutz).

Product details

  • Publisher ‏ : ‎ O′Reilly
  • Publication date ‏ : ‎ 12 July 2013
  • Edition ‏ : ‎ 5th
  • Language ‏ : ‎ English
  • Print length ‏ : ‎ 1540 pages
  • ISBN-10 ‏ : ‎ 1449355730
  • ISBN-13 ‏ : ‎ 978-1449355739
  • Item weight ‏ : ‎ 2.31 kg
  • Dimensions ‏ : ‎ 17.78 x 7.11 x 23.34 cm
  • Part of series ‏ : ‎ Learning Python
  • Best Sellers Rank: 126,919 in Stationery & Office Supplies (See Top 100 in Stationery & Office Supplies)
  • Customer reviews:
    4.5 out of 5 stars (1,890)

About the authors

Follow authors to get new release updates, plus improved recommendations.

Customer reviews

4.5 out of 5 stars
1,890 global ratings

Customers say

Customers find the book excellent for learning Python basics and appreciate its comprehensive content, with one customer noting it provides a deep understanding of the language. Moreover, the book is readable and well-written, and one customer mentions it serves as a reference for the language. However, customers disagree on whether it's suitable for beginners.
AI Generated from the text of customer reviews

Select to learn more

43 customers mention content, 35 positive, 8 negative
Customers find the book excellent for learning Python basics and as a reference guide, noting it helps them understand how things really work in the language.
If you want a comprehensive foundation in Python, then this is an excellent book that leaves no stone unturned, but it takes a long time to...Read more
Great book that works as a reference to the language. I find the book perfect when I need to dive deeper under the hood of Python....Read more
Despite the title, this seems to me good book as long as you don't need to learn Python from it....Read more
...youtube tutorials learning the syntax beforehand, this book is an excellent bridge up to intermediate Python.Read more
25 customers mention comprehensiveness, 20 positive, 5 negative
Customers find the book comprehensive and well-explained, with one customer noting it provides a deep understanding of Python.
Comprehensive and THE recommended text for learning Python. Seasoned professionals as well as complete beginners can benefit from the contents....Read more
Explains things VERY well. I like the progression and it has contributed to my learning amazingly wellRead more
Readable and detailedRead more
...No recommendations, no details, and a suggestion that you use the built-in function input() to prompt the user...Read more
8 customers mention readability, 6 positive, 2 negative
Customers find the book readable.
Easy to read and logically presented so that ideas readily follow.Read more
...It is highly readable - you won't need to continually re-read to understand what's going on - but the repetition means you will find yourself...Read more
...is an excellent book that leaves no stone unturned, but it takes a long time to read....Read more
Readable and detailedRead more
6 customers mention language coverage, 5 positive, 1 negative
Customers appreciate the language coverage of the book, with one customer noting it serves as a reference guide, while another mentions it provides a broad overview of Python.
...Lots of options and subtleties. Important and useful for a scripting language like Python, where you'll often be interacting with the o/s....Read more
...The book is a broad overview of a vast language; it is not a detailed API reference, and doesn't have examples of every possible API call....Read more
Great book that works as a reference to the language. I find the book perfect when I need to dive deeper under the hood of Python....Read more
...Python is not an obscure language, and there is a lot on the internet about the language....Read more
6 customers mention writing quality, 6 positive, 0 negative
Customers appreciate the writing quality of the book.
Very comprehensive and well written. Full of lots of gems.Read more
...This is a huge book (some 1600 pages) and it is clearly written with lots of tips and repeated warnings of beginners mistakes....Read more
...If you can ignore the structural defects, the book is beautifully written at the detailed level, and the code examples are of a high standard....Read more
Very well written and comprehensive introduction to PythonRead more
7 customers mention suitable for beginners, 2 positive, 5 negative
Customers find the book unsuitable for beginners.
...it clear a lot of work and passion went into this, it's just not very "consumable" , in my view.Read more
...finding the content you want difficult, and learning from the content both laborious and boring....Read more
...There are very doable but useful exercise questions at the end of each chapters, with answers....Read more
...1500 pages big. Big enough that physically handling the book is inconvenient....Read more
Buy it, have it on your desk, enjoy it, re-read it.
5 out of 5 stars
Buy it, have it on your desk, enjoy it, re-read it.
I like the book, enjoying it a lot, right about chapter 9 or so; although it is dense and it needs time to digest. Pros: - Very in-depth for 2.x and 3.x, really like how the author tackles subjects. - Clear examples and goes in depth in all of them. - So full of information that I feel I learn more than expected. - Excellent as a reference as well. - Excellent to learn how things really work in python, not a tutorial, not a simple guy, an in-depth killer book. - Good set of quiz questions and also exercises. - Good value for money. Cons: - Can be slightly dense. - Some things are not extremely necessary and going too in-depth can cause the reader to think "when are we writing some code? c'mon". Buy it, have it on your desk.
Thank you for your feedback
Sorry, there was an error
Sorry, we couldn't load the review

Top reviews from the United Kingdom

  • 5 out of 5 stars
    Good starting guide
    Reviewed in the United Kingdom on 25 May 2026
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    Excellent Tuition for Python
    Reviewed in the United Kingdom on 5 October 2014
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    What an excellent and fully document book for starting Python. I do have Python in a Nutshell, but decided I needed to start a little earlier in the sequence. This is a huge book (some 1600 pages) and it is clearly written with lots of tips and repeated warnings of beginners mistakes.

    It is based on lectures given by the author and feedback from the students. I am proceeding by leaps and bounds and find the code examples excellent. One can, of course, skip any which one does not need to do.

    I read it on the train to work (despite its size) and find it possible to practise the exercises when I get home. Python is simpler to learn than C or C++ and the structure of the objects is natural. If only I'd structured my exam question as clearly!

    3 people found this helpful
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 4 out of 5 stars
    Great book with terribly organised book code.
    Reviewed in the United Kingdom on 31 March 2018
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    After reading 1000 pages of the book I think book is very good. As a data analyst with just a little knowledge of Java and basic OOP concepts I found this book have everything beginner need to start programming in Python. When I started to learn Python I used some web tutorials, but this book gives me better understanding of things and I have really learned a lot from it.

    Lot of people see the size of the book as the downside, and I have to say it is depressing, but on the other hand I think see that as a benefit because book cover everything beginner need to learn to start to do some real quality programming, and I don't have to search for another sources. Anyway I don't think programming can be learned in one week after reading a 300 pages book, and shorter books don't cover this many topics.

    There is a lot of repetiton in the book which for me personally is not bad because I see them as a reminders and if the topic is something I feel I really understand I simply skip it.

    The only thing I don't like is that book's code which can be downloaded from publishers website is a complete unorganised mess, and poorly referenced in the book. So most of the time when I want I can't find the example code there, which make it completely useless.

    So, if you have time and want to learn Python I recommend this book, but if you have a short deadline or you don't have a lot of patients you should definitely skip it.

    4 people found this helpful
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    Buy it, have it on your desk, enjoy it, re-read it.
    Reviewed in the United Kingdom on 22 September 2017
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    I like the book, enjoying it a lot, right about chapter 9 or so; although it is dense and it needs time to digest.

    Pros:

    - Very in-depth for 2.x and 3.x, really like how the author tackles subjects.

    - Clear examples and goes in depth in all of them.

    - So full of information that I feel I learn more than expected.

    - Excellent as a reference as well.

    - Excellent to learn how things really work in python, not a tutorial, not a simple guy, an in-depth killer book.

    - Good set of quiz questions and also exercises.

    - Good value for money.

    Cons:

    - Can be slightly dense.

    - Some things are not extremely necessary and going too in-depth can cause the reader to think "when are we writing some code? c'mon".

    Buy it, have it on your desk.

    Buy it, have it on your desk, enjoy it, re-read it.
    Buy it, have it on your desk, enjoy it, re-read it.
    5 out of 5 stars
    Buy it, have it on your desk, enjoy it, re-read it.
    Reviewed in the United Kingdom on 22 September 2017

    I like the book, enjoying it a lot, right about chapter 9 or so; although it is dense and it needs time to digest.

    Pros:

    - Very in-depth for 2.x and 3.x, really like how the author tackles subjects.

    - Clear examples and goes in depth in all of them.

    - So full of information that I feel I learn more than expected.

    - Excellent as a reference as well.

    - Excellent to learn how things really work in python, not a tutorial, not a simple guy, an in-depth killer book.

    - Good set of quiz questions and also exercises.

    - Good value for money.

    Cons:

    - Can be slightly dense.

    - Some things are not extremely necessary and going too in-depth can cause the reader to think "when are we writing some code? c'mon".

    Buy it, have it on your desk.

    11 people found this helpful
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    Great tutorial and reference
    Reviewed in the United Kingdom on 3 October 2013
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    First of all this book is massive - it's the thickest paperback book I've ever seen! Despite its huge physical size the high quality print and binding work very well to keep the book usable.

    As a computing/radio hobbyist I've found this book to be an excellent Python tutorial. Having read it in its entirety I now find the book to be a very useful reference to get me back up to speed when I start a programming project. If you want to move on to more advanced Python Mark's Programming Python makes a great companion to this book.

    2 people found this helpful
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    Excellent book for learning the basics oh Python and more..
    Reviewed in the United Kingdom on 16 June 2016
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    This is the very basic (and heavy) book for everyone interested in Python. The text is very thorough but still easy to read. There are also many questions and exercises to keep up the learning in case one wants to also code instead of only read it through.

    One person found this helpful
    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 3 out of 5 stars
    More of a reference, not wonderful for learning from scratch
    Reviewed in the United Kingdom on 8 April 2026
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    This is a pretty hefty tome and contains good information, though not on GUIs. I got it 2nd hand and cheap and have no complaints but contrary to the 'title' and the author's assertion I wouldn't really call it a good book for learning python from scatch, even if like me you worked in It for 37 years! If you can get it cheap then I would say do so, but I would not buy it new for the current asking price

    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    Very well written and comprehensive introduction to Python
    Reviewed in the United Kingdom on 30 June 2020
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    This is a great reference book for your Python journey. The book is structured in a way that covers a high-level insight into aspects of the language and then provides a more in-depth look into topics should you wish to go deeper into something.

    Sending feedback...
    Thank you for your feedback.
    Sending feedback...
    Thank you. We’ll investigate in the next few days.

Top reviews from other countries

    Translated by Amazon
    See original
  • 5 out of 5 stars
    Ein Biest von Buch, aber sicher eines der besten Python-Bücher, wenn man tief einsteigen will
    Reviewed in Germany on 26 October 2019
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    Über 1.500 Seiten - das ist ein Biest von Buch. Da kann man schon mal ein paar Wochen und Monate Zeit mit verbringen. Dabei baut dieses Werk das Wissen logisch und - meiner Meinung nach auch didaktisch sehr gut gemacht - auf. Sprache und Ausdrucksweise sind sehr gut verständlich, die diversen Wiederholungen mögen dem einen oder anderen Leser überflüssig scheinen, ich empfinde das aber eher positiv, weil beim Lesen und durcharbeiten eines Buchs diesen Umfangs am Ende doch mehr Wissen dauerhaft hängen bleibt. Wer Python ernsthafter und intensiver nutzen möchte, ist gut beraten, sich dieses Buch anzuschaffen, denn es hat Referenzcharakter. Man findet sehr viele Themen und der Index ist gut gepflegt.

    Ich habe schon diverse Projekte in Java, C++ und C# realisiert, auch recht umfangreiche mit und ohne GUI, multithreaded, parallel und auch nicht parallel. Und dennoch muss ich sagen, dass - mal angesehen von den grundlegenden Sprachkonstrukten (Bedingungen, Operatoren, Schleifen, Listen, Arrays, Dictionaries etc ppa.), die in allen Programmiersprachen hinreichend ähnlich bis nahezu identisch aufgebaut und nutzbar sind - dieses Buch sehr deutlich zeigt, dass Python bei weitem alles andere als nur eine einfache "Script"-Sprache ist. Man kann definitiv schnell und easy Scripts mit Python schreiben und das auf vielen Betriebssystemen. Das ist genial. Alle erforderlichen Grundlagen dafür werden vom Author solide vermittelt und alle Konzepte sind hinreichend mit Beispiel-Code belegt. Easy to follow!

    Aber mit Python lassen sich auch mächtige und trotzdem effiziente Programme schreiben. Ich betreibe z.B. einen Cluster mit 15 Raspi 3B+ Platinen (60 Threads), um neuronale Netze, parallele Algorithmen für Machine Learning und Programme (in MPI programmiert) zu erforschen, eigene Programme zu schreiben etc. ppa. Neben C++ ist hier Python eine hervorragend geeignete Sprache nicht nur für die Steuerung und das Monitoring meines Raspi-Clusters, sondern eben auch für die darauf laufenden verteilten Anwendungen inkl. GUIs z.B. mit Tkinter oder Anbindung an MySQL oder SQL-Server für Datenbanken. Bei all diesen Python-Projekten hat mir das Buch von Mark Lutz erheblich weitergeholfen. Dazu habe ich auch sein zweites "Big Beast" mit dem Titel "Programming Python", das ebenfalls gute 1.500 Seiten hat, gelesen, wo es um die praktischen Anwendungen, also der echten Programmierung von GUIs und zahlreichen realen Anwendungen aus verschiedenen Bereichen geht. Auch dieses zweite Buch ist ein Referenzwerk für mich.

    Insgesamt kann ich "Learning Python" von Mark Lutz jedem empfehlen, der ein tieferes Verständnis von Python entwickeln möchte und der eben nicht nur ein paar kleine Scripts basteln möchte. Dafür gibt es sehr viel kürzere und kompaktere Darstellungen. Aber wer Python - wie ich - auch für größere und ernsthafte Projekte einsetzen möchte, sollte dieses Buch lesen und es in Greifnähe behalten. Ich beschäftige mich seit gut 1,5 Jahren intensiv mit Python und schlage noch immer das eine oder andere Thema in diesem Buch nach.

    Als absolut hilfreiche und lesenswerte Ergänzung zu den beiden Büchern von Mark Lutz möchte ich hier auch das Buch "The Python 3 Standard Library by Example" von Doug Hellmann empfehlen. Es gibt für mich kein besseres Buch, dass die unglaublich umfangreichen Standardbibliotheken von Python so gut erklärt. Für Fortgeschrittene, die mal Profi werden wollen, eine wahre Goldgrube.

    Sending feedback...
    Thank you. We’ll investigate in the next few days.
    Translated from German by Amazon
    See original
  • 5 out of 5 stars
    Not a reference book! It is a tutorial.
    Reviewed in Italy on 22 October 2020
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    This is not a reference book, it is a tutorial so you will be probably better off by reading it from the beginning to the end. It explains everything in detail. The first chapters give a nice overview of the language and then it goes more in depth. I was really into this approach because it gives context before diving into the details. This will lead to some repetition of important concepts sometimes which I personally find extremely useful. It explains differences with python 2.x also. Not an easy read but be patient and take your time to digest the material.

    You will find solutions to the exercise at the end.

    Pages > 1500.

    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 3 out of 5 stars
    Content is great, delivery and paper not
    Reviewed in Poland on 20 May 2021
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    The content of the book is very detailed and I personally found it useful during the learning process. The book came in not so good physical shape. The reason is partly paper quality, mostly though, it concerns packaging which allows the book to move freely inside the box.

    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 2 out of 5 stars
    Verbose, cluttered and dispersive
    Reviewed in the Netherlands on 3 February 2022
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    Unnecessarily long, extremely dispersive and cluttered. Sometimes redundant and ripetitive, sometimes surprisingly dismissive.

    Check David Beazley books instead.

    Sending feedback...
    Thank you. We’ll investigate in the next few days.
  • 5 out of 5 stars
    "One semester course packed in 1600 pages"
    Reviewed in Canada on 18 December 2013
    Brief content visible, double tap to read full content.
    Full content visible, double tap to read brief content.

    This book is a monstrosity. It exceeds 1600 pages and is cumbersome to read.

    That being said, it is very well written. Each section introduces new concepts and then tests them with exercises. The author's writing style is very easy to understand and it's almost like listening to a professor in a class environment.

    If you don't know Python and want to learn it properly, I really recommend this book. By the end of it you will feel like you have a good grasp of the language and its intricacies. If you take it slow and read it in its entirety (it is not the type of book you can skim), then it really is like taking a full semester course, except much, much cheaper!!

    Sending feedback...
    Thank you. We’ll investigate in the next few days.