Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Advanced Python Programming
Advanced Python Programming

Advanced Python Programming: Accelerate your Python programs using proven techniques and design patterns , Second Edition

Arrow left icon
Profile Icon Quan Nguyen
Arrow right icon
€11.99 per month
Full star icon Full star icon Full star icon Full star icon Half star icon 4.6 (14 Ratings)
Paperback Mar 2022 606 pages 2nd Edition
eBook
€28.99
Paperback
€35.99
Subscription
Free Trial
Renews at €11.99p/m
Arrow left icon
Profile Icon Quan Nguyen
Arrow right icon
€11.99 per month
Full star icon Full star icon Full star icon Full star icon Half star icon 4.6 (14 Ratings)
Paperback Mar 2022 606 pages 2nd Edition
eBook
€28.99
Paperback
€35.99
Subscription
Free Trial
Renews at €11.99p/m
eBook
€28.99
Paperback
€35.99
Subscription
Free Trial
Renews at €11.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $15.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Key benefits

  • Benchmark, profile, and accelerate Python programs using optimization tools
  • Scale applications to multiple processors with concurrent programming
  • Make applications robust and reusable using effective design patterns

Description

Python's powerful capabilities for implementing robust and efficient programs make it one of the most sought-after programming languages. In this book, you'll explore the tools that allow you to improve performance and take your Python programs to the next level. This book starts by examining the built-in as well as external libraries that streamline tasks in the development cycle, such as benchmarking, profiling, and optimizing. You'll then get to grips with using specialized tools such as dedicated libraries and compilers to increase your performance at number-crunching tasks, including training machine learning models. The book covers concurrency, a major solution to making programs more efficient and scalable, and various concurrent programming techniques such as multithreading, multiprocessing, and asynchronous programming. You'll also understand the common problems that cause undesirable behavior in concurrent programs. Finally, you'll work with a wide range of design patterns, including creational, structural, and behavioral patterns that enable you to tackle complex design and architecture challenges, making your programs more robust and maintainable. By the end of the book, you'll be exposed to a wide range of advanced functionalities in Python and be equipped with the practical knowledge needed to apply them to your use cases.

Who is this book for?

This book is for intermediate to experienced Python programmers who are looking to scale up their applications in a systematic and robust manner. Programmers from a range of backgrounds will find this book useful, including software engineers, scientific programmers, and software architects.

What you will learn

  • Write efficient numerical code with NumPy, pandas, and Xarray
  • Use Cython and Numba to achieve native performance
  • Find bottlenecks in your Python code using profilers
  • Optimize your machine learning models with JAX
  • Implement multithreaded, multiprocessing, and asynchronous programs
  • Solve common problems in concurrent programming, such as deadlocks
  • Tackle architecture challenges with design patterns

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Mar 25, 2022
Length: 606 pages
Edition : 2nd
Language : English
ISBN-13 : 9781801814010
Vendor :
Google
Category :
Languages :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $15.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Mar 25, 2022
Length: 606 pages
Edition : 2nd
Language : English
ISBN-13 : 9781801814010
Vendor :
Google
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€11.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€119.99 billed annually
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€169.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 6,500+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 109.97
Advanced Python Programming
€35.99
Learn Python Programming, 3rd edition
€35.99
Mastering Python 2E
€37.99
Total 109.97 Stars icon
Banner background image

Customer reviews

Top Reviews
Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.6
(14 Ratings)
5 star 71.4%
4 star 21.4%
3 star 7.1%
2 star 0%
1 star 0%
Filter icon Filter
Top Reviews

Filter reviews by




IntegralBill May 11, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
As the title states, "Advanced." This is an excellent book for learning advanced Python concepts!! This is not a book to initially learn Python or general programming. If you're already adept at Python, this book is a great next step. It covers various topics ranging from testing libraries to design patterns, in a concise manner. The book itself is large due to covering so many intermediate to advanced topics; but the book gets straight to the point, which is great!Some of the topics covered in this book have come up as questions in programming and data science interviews I've attended. So I wish I had this book prior to attending interviews. It's a great reference and full of ideas for you to consider when you are at that intermediate to advanced state.When you're ready to step up your current Python skills, if you're looking to interview as a Python-based Software Engineer or Data Scientist, or if you would like to discover Advanced Python ideas/topics which you may not have even thought of yet, this is an excellent book for you!!!
Amazon Verified review Amazon
POE Aug 15, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Python an increasingly relevant programming language and this book provides great insights, and examples on how to harness some of the advanced power of the language. This is accomplished by demonstrated how to use Python to implement concurrency, multithreading, multiprocessing, benchmarking, optimizing, and profiling. Additional topics include asynchronous programming and machine learning.I titled my review two books in one because, in addition to covering advanced programming topics and techniques, the book also covers design patterns. While not all the Gang of Four (GoF) 23 original design patterns are covered, the majority of them are.
Amazon Verified review Amazon
Jaime Sierra Silva (Consignment) Nov 24, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Python is a very versatile language, in general, one thing is to learn a language and another thing is to use it in the most optimal way, so that the software that is developed is of a performance for its users and the structure in which it is located.In "Advanced Python Programming", the author delves into techniques and practices to optimize programs written in Python, so that it uses optimally the resources at its disposal and fulfills its objectives in the best way. The book takes us through the different aspects to consider to improve our codes, the only goal is to be a better Python developer.
Amazon Verified review Amazon
Customer Review May 20, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
First impression was "Even though it's pretty long (~550 pages), this will be an easy read, because I already have substantial experience with Design Patterns in C++."Well, it was a lot more than just a Design Patterns in Python3 book. I wasn't very far into the book when my hubris became embarrassingly obvious. The author didn't even start in on the Design Patterns stuff until nearly 2/3rds of the way through the book. Well, that part was a comparably easy read, partially because using the GoF patterns in Python is a little easier than in C++. Well, mostly, anyway. Python3 makes using most of the GoF patterns pretty straightforward.The first two-thirds of the book were more challenging (and informative) than I expected. The author takes a deep dive into various ways to optimize and improve your code. Of course, he started off with the observation that the choice of algorithm totally dominates that process. But I certainly learned a lot about Python3 (and various library) optimizations.I got introduced to a lot of different things in Python3 that I didn't know existed, and got to review some things I had not encountered in a long time. In a way, learning Python is a lot like learning Java, in the sense that the syntax of the language is pretty easy to understand. The problem is that learning the proper syntax rules puts you at about 5% of the way to being a proficient programmer. Learning the "Pythonic" way of doing stuff (like making appropriate use of things like tuples and dictionaries) gets you to maybe 15%. Learning a huge body of existing libraries gets you to about 80%, after which incremental gains get more challenging.I think that this book can get you to almost 100% (actually, 100% might not really be achievable in any discipline -- or maybe the field just continues to expand) of the way to production programming. Well, this book and a few years of experience. If you already have a bit of Python3 experience, then this book is a great follow-on to get your Python3 chops to the next level.I liked the way the assessment questions were used, and I appreciated the coverage of the assessment answers at the end. The assessments were well-done.I can think of only two things to suggest for improvement. The first would be to make this into 3 books instead of one huge tome. That might have made it somewhat less overwhelming The second would be to provide an overview of how to use the various help facilities in Python. Although by the time you really need this book, you probably already have that 2nd part figured out.This book will be one that I return to often for reference.
Amazon Verified review Amazon
engineering_guy Apr 07, 2022
Full star icon Full star icon Full star icon Full star icon Full star icon 5
I have a very long time to read such a great book!This book makes concepts like concurrency and various concurrent programming techniques such as multithreading, multiprocessing, and asynchronous programming really easy to understand with great examples. Also, common problems that cause undesirable behaviour in concurrent programs are explained in a solid way. Design patterns - creational, structural, and behavioural patterns and much more complex design and architecture challenges are also part of the content.Overall, a useful book for a range of engineering backgrounds, including software engineers, scientific programmers, and software architects.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.