Typy danych
***********

Moduły opisane w tym rozdziale zapewniają różny typy danych takie jak:
daty i czas, macierze o stałym rozmiarze, kopce, listy dwukierunkowe i
enumeratory.

Python posiada również wbudowane typy danych,  w szczególności "dict",
"list", "set" i "frozenset", i "tuple". Klasa "str" jest używana do
trzymania ciągu znaków unicode, zaś klasy "bytes" i "bytearray" są
używane do trzymania danych w formacie binarnym.

Poszczególne moduły są opisane w rodziale:

* "datetime" --- Basic date and time types

  * Aware and Naive Objects

  * Stały

  * Available Types

    * Common Properties

    * Determining if an Object is Aware or Naive

  * "timedelta" Objects

    * Examples of usage: "timedelta"

  * "date" Objects

    * Examples of Usage: "date"

  * "datetime" Objects

    * Examples of Usage: "datetime"

  * "time" Objects

    * Examples of Usage: "time"

  * "tzinfo" Objects

  * "timezone" Objects

  * "strftime()" and "strptime()" Behavior

    * "strftime()" and "strptime()" Format Codes

    * Technical Detail

* "calendar" --- General calendar-related functions

* "collections" --- Container datatypes

  * "ChainMap" objects

    * "ChainMap" Examples and Recipes

  * "Counter" objects

  * "deque" objects

    * "deque" Recipes

  * "defaultdict" objects

    * "defaultdict" Examples

  * "namedtuple()" Factory Function for Tuples with Named Fields

  * "OrderedDict" objects

    * "OrderedDict" Examples and Recipes

  * "UserDict" objects

  * "UserList" objects

  * "UserString" objects

* "collections.abc" --- Abstract Base Classes for Containers

  * Collections Abstract Base Classes

* "heapq" --- Heap queue algorithm

  * Basic Examples

  * Priority Queue Implementation Notes

  * Theory

* "bisect" --- algorytm bisekcji tablicy

  * Searching Sorted Lists

  * Other Examples

* "array" --- Efektywne tablice wartości numerycznych

* "weakref" --- Weak references

  * Weak Reference Objects

  * Example

  * Finalizer Objects

  * Comparing finalizers with "__del__()" methods

* "types" --- Dynamic type creation and names for built-in types

  * Dynamic Type Creation

  * Standard Interpreter Types

  * Additional Utility Classes and Functions

  * Coroutine Utility Functions

* "copy" --- Shallow and deep copy operations

* "pprint" --- Data pretty printer

  * PrettyPrinter Objects

  * Example

* "reprlib" --- Alternate "repr()" implementation

  * Repr Objects

  * Subclassing Repr Objects

* "enum" --- Wsparcie dla enumeracji

  * Module Contents

  * Creating an Enum

  * Programmatic access to enumeration members and their attributes

  * Duplicating enum members and values

  * Ensuring unique enumeration values

  * Using automatic values

  * Iteration

  * Comparisons

  * Allowed members and attributes of enumerations

  * Restricted Enum subclassing

  * Pickling

  * Functional API

  * Derived Enumerations

    * IntEnum

    * IntFlag

    * Flag

    * Others

  * When to use "__new__()" vs. "__init__()"

  * Interesting examples

    * Omitting values

      * Using "auto"

      * Using "object"

      * Using a descriptive string

      * Using a custom "__new__()"

    * OrderedEnum

    * DuplicateFreeEnum

    * Planet

    * TimePeriod

  * How are Enums different?

    * Enum Classes

    * Enum Members (aka instances)

    * Finer Points

      * Supported "__dunder__" names

      * Supported "_sunder_" names

      * "Enum" member type

      * Boolean value of "Enum" classes and members

      * "Enum" classes with methods

      * Combining members of "Flag"
