A Fully Revised Edition Featuring New Material on Coroutines, Debugging, Testing, Parsing, String Formatting, and MorePython 3 is the best version of the language It is more powerful, convenient, consistent, and expressive than ever before. Now, leading Python programmer Mark Summerfield demonstrates how to write code that takes full advantage of Python 3's features and idioms. Programming in Python 3, Second Edition, brings together all the knowledge you need to write any program, use any standard or third-party Python 3 library, and create new library modules of your own. Summerfield draws on his many years of Python experience to share deep insights into Python 3 development you won't find anywhere else. He begins by illuminating Python's "beautiful heart" the eight key elements of Python you need to write robust, high-performance programs. Building on these core elements, he introduces new topics designed to strengthen your practical expertise-one concept and hands-on example at a time. Coverage includesDeveloping in Python using procedural, objectoriented, and functional programming paradigmsCreating custom packages and modulesWriting and reading binary, text, and XML files, including optional compression, random access, and text and XML parsingLeveraging advanced data types, collections, control structures, and functionsSpreading program workloads across multiple processes and threadsProgramming SQL databases and key--value DBM filesDebugging techniques-and using Test Driven Development to avoid bugs in the first placeUtilizing Python's regular expression mini-language and moduleParsing techniques, including how to use the third-party PyParsing and PLY modulesBuilding usable, efficient, GUI-based applicationsAdvanced programming techniques, including generators, function and class decorators, context managers, descriptors, abstract base classes, metaclasses, coroutines, and more Programming in Python 3, Second Edition, serves as both tutorial and language reference. It assumes some prior programming experience, and it is accompanied by extensive downloadable example code-all of it tested with Python 3 on Windows, Linux, and Mac OS X.
A really detailed book about Python 3. It's quite comprehensive although it misses some improvements from later Python versions. Some of the chapters honestly read like documentation and I would discourage you from reading it from cover to cover.
It is not suitable for programming beginners since it delves into some technical topics early on and the exercises are focused on getting to know the language rather than ntroducing programming concepts.
Also, the chapter about OOP has some horrible examples in my opinion (in what kind of world would you inherit a Circle class from a Point?!)
Очень неоднородная книга. Первые пять глав представляют собой отличный вводный углубленный курс в основы языка программирования. Шестая глава по большей части рассчитана на тех, кто уже имеет какое-то представление о питоне. Начиная же с седьмой главы, автор, хотя и затрагивает частично важные и нужные темы, но делает это через какие-то непонятные дебри. Читать книгу становится неинтересно, так как в большинстве случаев очень быстро теряешь смысл. Таким образом, начало книги - для новичков, середина - для продолжающих обучение, а концовка - для очень и очень продвинутых профессионалов. Найти же одного человека, которому понравится вся книга целиком при таком раскладе практически невозможно.
I found it useful, though as others have mentioned, it gets technical and difficult quickly despite the vaunted ease of the language. Still, it's an adequate work for those needing a printed handbook to power through the language, though in truth, all of this stuff can be found in various tutorials on the web.
Согласен с одним из ревьюеров, который пожаловался на достаточно ускоряющийся темп и сложность книги по мере прочтения. До середины все было достаточно усваяемо, во второй половине стало сильно сложнее. К перечтению - возможно, но думаю в основном можно обращаться как к справочному материалу.
Started with learn python the hard way (was adapting their code to python 3 by the way of google) and could only suffer that one until it hit OOP. Then I realised i needed a good old textbook instead of something that tries to cover a whole concept by a single example and found this one. This is one of those books you read line by line if you have time to kill and if you do so, it will probably give you a solid foundation. If python is your first programming language, that will be an exhausting exercise as you are learning the common concepts as well as the language so take your time. However for someone who is comfortable with other languages (especially anything OOP) the most efficient way to use is probably skim read the new syntax, list its best practices, learn key differences vs what you know and come back to it as a reference doc whenever you are building your own code and need to know the difference between two particular options.
All in all, this book is pretty great if you have the right expectations from it.
I actually did not finish this book, but I still plan on making use of it from time to time. It did not work well for me as a book to read "front to back" to learn Python (in my case re-learn and get an intro to Python 3), mostly because of the amount of time spent on explaining the examples as opposed to giving a quick introduction to the language. However, that 'weakness' becomes a strength later as you are actually writing Python code because the in-depth examples are helpful to learn from to solve real problems. So I think this books serves better as a "next step" after getting started using another resource.
Seems a good introduction to Python 3, but there are a few topics that I was hoping to be covered that weren't: Dealing with project organisation (i.e. how to manage many many files effectively and efficiently), how to read and interpret the (internal) documentation, some more on meta-programming, and maybe a bit more detail on how to work with third-party libraries. But as an introduction, very decent indeed.
This is an excellent introduction to the language and unusually well crafted for a technical book. It does a good job of plugging you into the zietgiest of Python without that mindless True Believer vibe.
It's takes a while to get use to the syntax of the language but useful for scientific applications and research. A lot of the scientists recommend the language in their course work.