example-code-2e/README.md

54 lines
2.7 KiB
Markdown
Raw Normal View History

2019-04-06 12:11:08 +02:00
# Fluent Python 2e example code
2021-05-24 18:48:55 +02:00
Example code for the book **Fluent Python, 2<sup>nd</sup> edition** by Luciano Ramalho (O'Reilly, 2021).
2019-04-06 12:11:08 +02:00
2019-04-06 22:52:27 +02:00
> **BEWARE**: This is a work in progress!
2019-04-06 12:11:08 +02:00
>
> * Code here may change and disappear without warning.
>
> * Major reorganizations may happen at any time.
>
> * No promises. No guarantees. Use at own risk.
2019-04-06 12:17:48 +02:00
## Table of Contents
2019-04-06 12:25:27 +02:00
All chapters are undergoing review and updates, including significant rewrites in the chapters about concurrency in **Part V**.
2019-04-06 12:17:48 +02:00
2021-05-21 03:58:05 +02:00
New chapters in **Fluent Python 2e** are marked with 🆕.
2019-04-06 12:17:48 +02:00
2021-05-21 03:58:05 +02:00
🚨 This table of contents is subject to change at any time until the book goes to the printer.
2019-04-06 12:25:27 +02:00
2021-05-21 03:58:05 +02:00
Part / Chapter #|Title|Directory|Notebook|1<sup>st</sup> ed. Chapter&nbsp;#
---:|---|---|---|:---:
2019-04-06 22:44:37 +02:00
**I Prologue**|
2021-05-21 03:58:05 +02:00
1|The Python Data Model|[01-data-model](01-data-model)|[data-model.ipynb](01-data-model/data-model.ipynb)|1
2019-04-06 22:44:37 +02:00
**II Data Structures**|
2021-05-21 03:58:05 +02:00
2|An Array of Sequences|[02-array-seq](02-array-seq)|[array-seq.ipynb](02-array-seq/array-seq.ipynb)|2
3|Dictionaries and Sets|[03-dict-set](03-dict-set)||3
4|Text versus Bytes|[04-text-byte](04-text-byte)||4
🆕 5|Record-like Data Structures|[05-record-like](05-record-like)||
6|Object References, Mutability, and Recycling|[06-obj-ref](06-obj-ref)||8
2019-04-06 22:44:37 +02:00
**III Functions as Objects**|
2021-05-21 03:58:05 +02:00
7|First-Class Funcions|[07-1class-func](07-1class-func)||5
🆕 8|Type Hints in Function Definitions|[08-def-type-hints](08-def-type-hints)||
9|Function Decorators and Closures|[09-closure-deco](09-closure-deco)||7
10|Design Patterns with First-Class Functions|[10-dp-1class-func](10-dp-1class-func)||6
2019-04-06 22:44:37 +02:00
**IV Object-Oriented Idioms**|
2021-05-21 03:58:05 +02:00
11|A Pythonic Object|[11-pythonic-obj](11-pythonic-obj)||9
12|Sequence Hacking, Hashing, and Slicing|[12-seq-hacking](12-seq-hacking)||10
13|Interfaces, Protocols, and ABCs|[13-protocl-abc](13-protocol-abc)||11
14|Inheritance: For Good or For Worse|[14-inheritance](14-inheritance)||12
🆕 15|More About Type Hints|[15-more-types](15-more-types)||
16|Operator Overloading: Doing It Right|[16-op-overloading](16-op-overloading)||13
2019-04-06 22:44:37 +02:00
**V Control Flow**|
2021-05-21 03:58:05 +02:00
17|Iterables, Iterators, and Generators|[17-it-generator](17-it-generator)||14
18|Context Managers and else Blocks|[18-context-mngr](18-context-mngr)||15
19|Classic Coroutines|[19-coroutine](19-coroutine)||16
🆕 20|Concurrency Models in Python|[20-concurrency](20-concurrency)||-
21|Concurrency with Futures|[21-futures](21-futures)||17
22|Asynchronous Programming|[22-async](22-async)||18
2019-04-06 22:44:37 +02:00
**VI Metaprogramming**|
2021-05-21 03:58:05 +02:00
23|Dynamic Attributes and Properties|[22-dyn-attr-prop](22-dyn-attr-prop)||19
24|Attribute Descriptors|[23-descriptor](23-descriptor)||20
25|Class Metaprogramming|[24-class-metaprog](24-class-metaprog)||21