Learning Cython programming : learn the fundamentals of Cython to extend the legacy of your applications /
Learn the fundamentals of Cython to extend the legacy of your applicationsAbout This Book Learn how to extend C applications with pure Python code Get more from Python - you'll not only learn Cython, you'll also unlock a greater understanding of how to harness Python Packed with tips and t...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham, UK :
Packt Publishing,
2016.
|
Edición: | Second edition. |
Colección: | Community experience distilled.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Cover; Copyright; Credits; About the Author; Acknowledgments; About the Reviewer; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Cython Won't Bite; Installing Cython; Emacs mode; Getting the code examples; Getting started
- Hello World; Using distutils with Cython; Calling C functions from Python; Type conversion in Cython; Summary; Chapter 2: Understanding Cython; Linking models; Cython keyword
- cdef; Structs; Enums; Typedef and function pointers; The public keyword; Keyword cpdef; Logging from C/C++ into Python; Using Python ConfigParser from C/C++; Callbacks from Python to C/C++
- Cython PXDIntegration with build systems; Python Distutils; GNU/Autotools; Summary; Chapter 3: Extending Applications; Cython pure Python code; Compiling pure Python code; Avoid Makefiles
- pyximport; Python garbage collector; Extending Tmux; Tmux build system; Embedding Python; Cythonizing struct cmd_entry; Implementing a Tmux command; Hooking everything together; Summary; Chapter 4: Debugging Cython; Using GDB with Cython; Running cygdb; Cython caveats; Type checking; Dereference operator (*); Python exceptions; C/C++ iterators; Boolean error; Const keyword; Multiple Cython inputs
- Struct initializationCalling into pure Python modules; Summary; Chapter 5: Advanced Cython; Cython and C++; Namespaces; Classes; C++ new and del keyword; Exceptions; Bool type; Overloading; Templates; Static class member attribute; Calling C++ functions
- Caveat; Namespaces
- Caveat; Python distutils; Python threading and GIL; Atomic instructions; Read/write lock; Cython keywords; Messaging server; Caveat on GIL; Unit testing the native code; Preventing subclassing; Parsing large amounts of data; Summary; Chapter 6: Further Reading; Overview; OpenMP support; Compile time preprocessor
- Python 3PyPy; AutoPXD; Pyrex and Cython; SWIG and Cython; Cython and NumPy; Numba versus Cython; Parakeet and Numba; Relevant Links; Summary; Index