Типы данных¶Data Types
Модули, описанные в этой главе, предоставляют множество специализированных типов данных, таких как даты и время, массивы фиксированного типа, кучи, двусторонние очереди и перечисления.
Python также предоставляет несколько встроенных типов данных, в частности,
dict, list, set, frozenset и
tuple. Класс str используется для хранения строк Unicode, а классы bytes и bytearray используются
для хранения двоичных данных.
В этой главе описаны следующие модули:
datetime– базовые типы даты и времениdatetime – Basic date and time types- Осведомлённые и наивные объектыAware and Naive Objects
- КонстантыConstants
- Доступные типыAvailable Types
- Объекты
timedeltatimedelta Objects - Объекты
datedate Objects - Объекты
datetimedatetime Objects - Объекты
timetime Objects - Объекты
tzinfotzinfo Objects - Объекты
timezonetimezone Objects - Поведение
strftime()иstrptime()strftime() and strptime() Behavior
zoneinfo– поддержка часовых поясов IANAzoneinfo – IANA time zone supportcalendar– общие функции для работы с календарёмcalendar – General calendar-related functionscollections– контейнерные типы данныхcollections – Container datatypesChainMapобъектыChainMap objectsCounterобъектыCounter objectsdequeобъектыdeque objectsdefaultdictобъектыdefaultdict objectsnamedtuple()– фабричная функция для кортежей с именованными полямиnamedtuple() Factory Function for Tuples with Named FieldsOrderedDictобъектыOrderedDict objectsUserDictобъектыUserDict objectsUserListобъектыUserList objectsUserStringобъектыUserString objects
collections.abc– абстрактные базовые классы для контейнеровcollections.abc – Abstract Base Classes for Containersheapq– алгоритм кучи (очередь с приоритетом)heapq – Heap queue algorithmbisect– алгоритм бисекции массиваbisect – Array bisection algorithmarray– эффективные массивы числовых значенийarray – Efficient arrays of numeric valuesweakref– слабые ссылкиweakref – Weak referencestypes– динамическое создание типов и имена для встроенных типовtypes – Dynamic type creation and names for built-in typescopy– операции поверхностного и глубокого копированияcopy – Shallow and deep copy operationspprint– форматированный вывод данныхpprint – Data pretty printerreprlib– альтернативнаяrepr()реализацияreprlib – Alternate repr() implementationenum– поддержка перечисленийenum – Support for enumerations- Содержимое модуляModule Contents
- Создание EnumCreating 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
- Ограниченное создание подклассов EnumRestricted Enum subclassing
- Сериализация picklePickling
- Функциональный APIFunctional API
- Производные перечисленияDerived Enumerations
- Когда использовать
__new__()вместо__init__()When to use __new__() vs. __init__() - Интересные примерыInteresting examples
- Чем различаются перечисления?How are Enums different?
- Классы EnumEnum Classes
- Члены Enum (экземпляры)Enum Members (aka instances)
- Тонкие моментыFiner Points
- Поддерживаемые
__dunder__именаSupported __dunder__ names - Поддерживаемые
_sunder_именаSupported _sunder_ names - _Private__names
- Тип элемента
EnumEnum member type - Логическое значение классов и элементов
EnumBoolean value of Enum classes and members - Классы
Enumс методамиEnum classes with methods - Объединение элементов
FlagCombining members of Flag
- Поддерживаемые
graphlib– Функциональность для работы с графоподобными структурамиgraphlib – Functionality to operate with graph-like structures