Advanced Python Programming

Lanaro, Dr Gabriele, Nguyen, Quan, Kasampalis, Sakis

買這商品的人也買了...

商品描述

Key Features

  • Set up and run distributed algorithms on a cluster using Dask and PySpark
  • Master skills to accurately implement concurrency in your code
  • Gain practical experience of Python design patterns with real-world examples

Book Description

This Learning Path shows you how to leverage the power of both native and third-party Python libraries for building robust and responsive applications. You will learn about profilers and reactive programming, concurrency and parallelism, as well as tools for making your apps quick and efficient. You will discover how to write code for parallel architectures using TensorFlow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark. With the knowledge of how Python design patterns work, you will be able to clone objects, secure interfaces, dynamically choose algorithms, and accomplish much more in high performance computing.

By the end of this Learning Path, you will have the skills and confidence to build engaging models that quickly offer efficient solutions to your problems.

This Learning Path includes content from the following Packt products:

  • Python High Performance - Second Edition by Gabriele Lanaro
  • Mastering Concurrency in Python by Quan Nguyen
  • Mastering Python Design Patterns by Sakis Kasampalis

What you will learn

  • Use NumPy and pandas to import and manipulate datasets
  • Achieve native performance with Cython and Numba
  • Write asynchronous code using asyncio and RxPy
  • Design highly scalable programs with application scaffolding
  • Explore abstract methods to maintain data consistency
  • Clone objects using the prototype pattern
  • Use the adapter pattern to make incompatible interfaces compatible
  • Employ the strategy pattern to dynamically choose an algorithm

Who this book is for

This Learning Path is specially designed for Python developers who want to build high-performance applications and learn about single core and multi-core programming, distributed concurrency, and Python design patterns. Some experience with Python programming language will help you get the most out of this Learning Path.

商品描述(中文翻譯)

主要特點


  • 使用Dask和PySpark在叢集上設置和運行分散式算法

  • 掌握在代碼中準確實現並發性的技巧

  • 通過實際示例獲得Python設計模式的實踐經驗

書籍描述

本學習路徑向您展示如何利用本地和第三方Python庫來構建強大且響應迅速的應用程序。您將學習有關分析器和反應式編程、並發性和並行性以及使應用程序快速高效的工具。您將了解如何使用TensorFlow和Theano為並行架構編寫代碼,並使用Dask和PySpark等技術進行大規模計算。通過了解Python設計模式的工作原理,您將能夠克隆對象、保護接口、動態選擇算法等,在高性能計算中實現更多功能。

通過本學習路徑的結束,您將具備構建引人入勝的模型的技能和信心,並能夠快速提供高效的解決方案。

本學習路徑包含以下Packt產品的內容:


  • Python高性能-第二版,作者Gabriele Lanaro

  • Python並發編程大師,作者Quan Nguyen

  • Python設計模式大師,作者Sakis Kasampalis

您將學到什麼


  • 使用NumPy和pandas導入和操作數據集

  • 使用Cython和Numba實現本地性能

  • 使用asyncio和RxPy編寫異步代碼

  • 使用應用程序脚手架設計高度可擴展的程序

  • 探索維護數據一致性的抽象方法

  • 使用原型模式克隆對象

  • 使用適配器模式使不兼容的接口兼容

  • 使用策略模式動態選擇算法

適合閱讀對象

本學習路徑專為希望構建高性能應用程序並學習單核心和多核心編程、分佈式並發性和Python設計模式的Python開發人員而設計。具備一定的Python編程語言經驗將有助於您充分利用本學習路徑的內容。

作者簡介

  1. Benchmarking and Profiling
  2. Pure Python Optimizations
  3. Fast Array Operations with NumPy and Pandas
  4. C Performance with Cython
  5. Exploring Compilers
  6. Implementing Concurrency
  7. Parallel Processing
  8. Advanced Introduction to Concurrent and Parallel Programming
  9. Amdahl's Law
  10. Working with Threads in Python
  11. Using the with Statement in Threads
  12. Concurrent Web Requests
  13. Working with Processes in Python
  14. Reduction Operators in Processes
  15. Concurrent Image Processing
  16. Introduction to Asynchronous Programming
  17. Implementing Asynchronous Programming in Python
  18. Building Communication Channels with asyncio
  19. Deadlocks
  20. Starvation
  21. Race Conditions
  22. The Global Interpreter Lock
  23. The Factory Pattern
  24. The Builder Pattern
  25. Other Creational Patterns
  26. The Adapter Pattern
  27. The Decorator Pattern
  28. The Bridge Pattern
  29. The Facade Pattern
  30. Other Structural Patterns
  31. The Chain of Responsibility Pattern
  32. The Command Pattern

作者簡介(中文翻譯)

- 基準測試和分析
- 純 Python 優化
- 使用 NumPy 和 Pandas 進行快速陣列操作
- 使用 Cython 進行 C 語言效能優化
- 探索編譯器
- 實現並行性
- 平行處理
- 並行和平行程式設計的進階介紹
- Amdahl's Law(阿姆達爾定律)
- 在 Python 中使用執行緒
- 在執行緒中使用 with 陳述式
- 並行網路請求
- 在 Python 中使用進程
- 進程中的減少運算子
- 並行圖像處理
- 非同步程式設計入門
- 在 Python 中實現非同步程式設計
- 使用 asyncio 建立通訊通道
- 死結
- 飢餓
- 競爭條件
- 全域解譯器鎖定
- 工廠模式
- 建造者模式
- 其他創建型模式
- 適配器模式
- 裝飾者模式
- 橋接模式
- 外觀模式
- 其他結構型模式
- 責任鏈模式
- 命令模式