Book Image

Learning Python Application Development

By : Ninad Sathaye
Book Image

Learning Python Application Development

By: Ninad Sathaye

Overview of this book

Python is one of the most widely used dynamic programming languages, supported by a rich set of libraries and frameworks that enable rapid development. But fast paced development often comes with its own baggage that could bring down the quality, performance, and extensibility of an application. This book will show you ways to handle such problems and write better Python applications. From the basics of simple command-line applications, develop your skills all the way to designing efficient and advanced Python apps. Guided by a light-hearted fantasy learning theme, overcome the real-world problems of complex Python development with practical solutions. Beginning with a focus on robustness, packaging, and releasing application code, you’ll move on to focus on improving application lifetime by making code extensible, reusable, and readable. Get to grips with Python refactoring, design patterns and best practices. Techniques to identify the bottlenecks and improve performance are covered in a series of chapters devoted to performance, before closing with a look at developing Python GUIs.
Table of Contents (18 chapters)
Learning Python Application Development
Credits
Disclaimers
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Summary


In this chapter, you learned many techniques that help cut down the application's runtime. We started by improving the speed of the Gold Hunt application. The total time taken to run this application was improved by more than 50%—we accomplished this by changing the algorithm so that it does not need to compute the square root for distance comparison. Two more changes knocked off a few more seconds from the total execution time. We avoided the function re-evaluation (skipped the "dots") and preferred local scope for the variables over global scope. This was the end of part one of the performance improvement for the Gold Hunt program.

Moving on, the chapter taught you a number of ways that help speed up the code. It illustrated how a list comprehension does a better job compared to an equivalent for loop. We also saw how the choice of data structure affects the performance. The chapter further introduced us to the generator expressions that offer memory advantage over the list comprehensions...