Data Types¶
The modules described in this chapter provide a variety of specialized data types such as dates and times, fixed-type arrays, heap queues, double-ended queues, and enumerations.
Python also provides some built-in data types, in particular,
dict
, list
, set
and frozenset
, and
tuple
. The str
class is used to hold
Unicode strings, and the bytes
and bytearray
classes are used
to hold binary data.
The following modules are documented in this chapter:
datetime
— Basic date and time types- Aware and Naive Objects
- Constants
- Available Types
timedelta
Objectsdate
Objectsdate
date.today()
date.fromtimestamp()
date.fromordinal()
date.fromisoformat()
date.fromisocalendar()
date.min
date.max
date.resolution
date.year
date.month
date.day
date.replace()
date.timetuple()
date.toordinal()
date.weekday()
date.isoweekday()
date.isocalendar()
date.isoformat()
date.__str__()
date.ctime()
date.strftime()
date.__format__()
- Examples of Usage:
date
datetime
Objectsdatetime
datetime.today()
datetime.now()
datetime.utcnow()
datetime.fromtimestamp()
datetime.utcfromtimestamp()
datetime.fromordinal()
datetime.combine()
datetime.fromisoformat()
datetime.fromisocalendar()
datetime.strptime()
datetime.min
datetime.max
datetime.resolution
datetime.year
datetime.month
datetime.day
datetime.hour
datetime.minute
datetime.second
datetime.microsecond
datetime.tzinfo
datetime.fold
datetime.date()
datetime.time()
datetime.timetz()
datetime.replace()
datetime.astimezone()
datetime.utcoffset()
datetime.dst()
datetime.tzname()
datetime.timetuple()
datetime.utctimetuple()
datetime.toordinal()
datetime.timestamp()
datetime.weekday()
datetime.isoweekday()
datetime.isocalendar()
datetime.isoformat()
datetime.__str__()
datetime.ctime()
datetime.strftime()
datetime.__format__()
- Examples of Usage:
datetime
time
Objectstzinfo
Objectstimezone
Objectsstrftime()
andstrptime()
Behavior
calendar
— General calendar-related functionsCalendar
Calendar.iterweekdays()
Calendar.itermonthdates()
Calendar.itermonthdays()
Calendar.itermonthdays2()
Calendar.itermonthdays3()
Calendar.itermonthdays4()
Calendar.monthdatescalendar()
Calendar.monthdays2calendar()
Calendar.monthdayscalendar()
Calendar.yeardatescalendar()
Calendar.yeardays2calendar()
Calendar.yeardayscalendar()
TextCalendar
HTMLCalendar
LocaleTextCalendar
LocaleHTMLCalendar
setfirstweekday()
firstweekday()
isleap()
leapdays()
weekday()
weekheader()
monthrange()
monthcalendar()
prmonth()
month()
prcal()
calendar()
timegm()
day_name
day_abbr
month_name
month_abbr
collections
— Container datatypescollections.abc
— Abstract Base Classes for Containersheapq
— Heap queue algorithmbisect
— Array bisection algorithmarray
— Efficient arrays of numeric valuesarray
typecodes
array.typecode
array.itemsize
array.append()
array.buffer_info()
array.byteswap()
array.count()
array.extend()
array.frombytes()
array.fromfile()
array.fromlist()
array.fromstring()
array.fromunicode()
array.index()
array.insert()
array.pop()
array.remove()
array.reverse()
array.tobytes()
array.tofile()
array.tolist()
array.tostring()
array.tounicode()
weakref
— Weak referencesref
proxy()
getweakrefcount()
getweakrefs()
WeakKeyDictionary
WeakKeyDictionary.keyrefs()
WeakValueDictionary
WeakValueDictionary.valuerefs()
WeakSet
WeakMethod
finalize
ReferenceType
ProxyType
CallableProxyType
ProxyTypes
- 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
FunctionType
LambdaType
GeneratorType
CoroutineType
AsyncGeneratorType
CodeType
CellType
MethodType
BuiltinFunctionType
BuiltinMethodType
WrapperDescriptorType
MethodWrapperType
MethodDescriptorType
ClassMethodDescriptorType
ModuleType
TracebackType
FrameType
GetSetDescriptorType
MemberDescriptorType
MappingProxyType
- Additional Utility Classes and Functions
- Coroutine Utility Functions
copy
— Shallow and deep copy operationspprint
— Data pretty printerreprlib
— Alternaterepr()
implementationenum
— Support for enumerations- 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
- When to use
__new__()
vs.__init__()
- Interesting examples
- How are Enums different?