mirror of
https://github.com/python/cpython.git
synced 2025-09-26 18:29:57 +00:00
gh-130843: add UUIDv7 timestamp recipes (#132154)
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
This commit is contained in:
parent
ce724571b3
commit
fd1b98dd1d
1 changed files with 13 additions and 2 deletions
|
@ -121,8 +121,10 @@ which relays any information about the UUID's safety, using this enumeration:
|
|||
- The last 48 bits of the UUID. Only relevant to version 1.
|
||||
|
||||
* - .. attribute:: UUID.time
|
||||
- The 60-bit timestamp for version 1 and 6,
|
||||
or the 48-bit timestamp for version 7.
|
||||
- The 60-bit timestamp as a count of 100-nanosecond intervals since
|
||||
Gregorian epoch (1582-10-15 00:00:00) for versions 1 and 6, or the
|
||||
48-bit timestamp in milliseconds since Unix epoch (1970-01-01 00:00:00)
|
||||
for version 7.
|
||||
|
||||
* - .. attribute:: UUID.clock_seq
|
||||
- The 14-bit sequence number. Only relevant to versions 1 and 6.
|
||||
|
@ -434,6 +436,15 @@ Here are some examples of typical usage of the :mod:`uuid` module::
|
|||
>>> uuid.MAX
|
||||
UUID('ffffffff-ffff-ffff-ffff-ffffffffffff')
|
||||
|
||||
>>> # get UUIDv7 creation (local) time as a timestamp in milliseconds
|
||||
>>> u = uuid.uuid7()
|
||||
>>> u.time # doctest: +SKIP
|
||||
1743936859822
|
||||
>>> # get UUIDv7 creation (local) time as a datetime object
|
||||
>>> import datetime as dt
|
||||
>>> dt.datetime.fromtimestamp(u.time / 1000) # doctest: +SKIP
|
||||
datetime.datetime(...)
|
||||
|
||||
|
||||
.. _uuid-cli-example:
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue