# 8. Types de données

Les modules documentés dans ce chapitre fournissent une gamme de types de données spécialisés tel que les dates et les heures, les listes à type prédéfini, les heap queue, les queues synchronisées, et les ensembles.

Python also provides some built-in data types, in particular, `dict`, `list`, `set` (which along with `frozenset`, replaces the deprecated `sets` module), and `tuple`. The `str` class can be used to handle binary data and 8-bit text, and the `unicode` class to handle Unicode text.

Les modules suivants sont documentés dans ce chapitre :

- 8.1. `datetime` — Types de base pour la date et l’heure
  - 8.1.1. Types disponibles
  - 8.1.2. Objets `timedelta`
  - 8.1.3. Objets `date`
  - 8.1.4. Objets `datetime`
  - 8.1.5. `time` Objects
  - 8.1.6. Objets `tzinfo`
  - 8.1.7. Comportement de `strftime()` et `strptime()`
- 8.2. `calendar` — General calendar-related functions
- 8.3. `collections` — High-performance container datatypes
  - 8.3.1. Objets `Counter`
  - 8.3.2. Objets `deque`
    - 8.3.2.1. Cas pratiques utilisant `deque`
  - 8.3.3. Objets `defaultdict`
    - 8.3.3.1. Exemples utilisant `defaultdict`
  - 8.3.4. `namedtuple()`: fonction de construction pour n-uplets (tuples) avec des champs nommés
  - 8.3.5. Objets `OrderedDict`
    - 8.3.5.1. Exemples et cas pratiques utilisant `OrderDict`
  - 8.3.6. Classes de base abstraites de collections
- 8.4. `heapq` — Heap queue algorithm
  - 8.4.1. Basic Examples
  - 8.4.2. Priority Queue Implementation Notes
  - 8.4.3. Theory
- 8.5. `bisect` — Algorithme de bissection de listes
  - 8.5.1. Chercher dans des listes triées
  - 8.5.2. Autres Exemples
- 8.6. `array` — Tableaux efficaces de valeurs numériques
- 8.7. `sets` — Unordered collections of unique elements
  - 8.7.1. Set Objects
  - 8.7.2. Exemple
  - 8.7.3. Protocol for automatic conversion to immutable
  - 8.7.4. Comparison to the built-in `set` types
- 8.8. `sched` — Event scheduler
  - 8.8.1. Scheduler Objects
- 8.9. `mutex` — Mutual exclusion support
  - 8.9.1. Mutex Objects
- 8.10. `Queue` — A synchronized queue class
  - 8.10.1. Objets `Queue`
- 8.11. `weakref` — Weak references
  - 8.11.1. Weak Reference Objects
  - 8.11.2. Exemple
- 8.12. `UserDict` — Class wrapper for dictionary objects
- 8.13. `UserList` — Class wrapper for list objects
- 8.14. `UserString` — Class wrapper for string objects
- 8.15. `types` — Names for built-in types
- 8.16. `new` — Creation of runtime internal objects
- 8.17. `copy` — Opérations de copie superficielle et récursive
- 8.18. `pprint` — Data pretty printer
  - 8.18.1. PrettyPrinter Objects
  - 8.18.2. pprint Example
- 8.19. `repr` — Alternate `repr()` implementation
  - 8.19.1. Repr Objects
  - 8.19.2. Subclassing Repr Objects