With Early Release ebooks, you get books in their earliest form—the author's raw and unedited content as he or she writes—so you can take advantage of these technologies long before the official release of these titles. You'll also receive updates when significant changes are made, new chapters as they're written, and the final ebook bundle.
Cython can yield massive performance improvements over pure Python—speedups of 3000X are easily attainable for certain patterns. With this book, Kurt Smith shows you how to use Cython to easily wrap C and C++ libraries in Python, handling all the details of memory management for you. By removing the barrier between Python and C, Cython harnesses the best of both languages while remaining familiar and comfortable to Python users.
Cython has proven its usefulness in many foundational projects: Pandas, SymPy, Sage, and dozens of others, both open and closed source. You'll learn how Cython is an essential part of any performance-oriented Python programmer’s arsenal.
Chapter 1Cython Essentials
Chapter 2Getting from Cython Source to Running Code
Chapter 3Cython in Depth
Chapter 4Cython and Extension Types
Chapter 5Wrapping C Libraries with Cython
Chapter 6Wrapping C++ Libraries with Cython
Chapter 7Organizing your Cython Code
Chapter 8Cython Profiling Tools
Chapter 9Cython, NumPy, Buffers, and Typed Memoryviews
Kurt Smith has been using Python in scientific computing ever since his college days, looking for any opportunity to incorporate it into his computational physics classes. He has contributed to the Cython project as part of the 2009 Google Summer of Code, implementing the initial version of typed memoryviews and native cython arrays. He uses Cython extensively in his consulting work at Enthought, training hundreds of scientists, engineers, and researchers in Python, NumPy, Cython, and parallel and high-performance computing.
As I'm writing this, the book is still an early release, so I am still missing the last few chapters, but I have been looking forward to, and reading, each update as quickly as they come out.
Python is a great language for math/science work, but as an interpreted language, it can be slow for some uses. Cython is a clever way to overcome this limitation without losing the benefits of Python. This book is a great guide to all aspects of Cython.
You don't need to know any Cython when you start this book (I'd never seen it before), but it is NOT an introduction to Python. I would suggest this book for people who are fairly familiar with Python and want to push it beyond what it can do on its own, or who would like to interface Python with C/C++ code for various reasons.
Beyond just an introduction, this book goes in to great depth on the various aspects of Cython and C/C++ interfacing using Cython. After reading and developing along with this book you should be able to do just about anything there is to do in Cython. I can't recommend it highly enough!
Bottom Line Yes, I would recommend this to a friend