Universally Unique Lexicographically Sortable Identifier
Project description
What is this?
This is a port of the original JavaScript ULID implementation to Python.
A ULID is a universally unique lexicographically sortable identifier. It is
128-bit compatible with UUID
1.21e+24 unique ULIDs per millisecond
Lexicographically sortable!
Canonically encoded as a 26 character string, as opposed to the 36 character UUID
Uses Crockford’s base32 for better efficiency and readability (5 bits per character)
Case insensitive
No special characters (URL safe)
In general the structure of a ULID is as follows:
01AN4Z07BY 79KA1307SR9X4MV3
|----------| |----------------|
Timestamp Randomness
48bits 80bits
For more information have a look at the original specification.
Basic Usage
>>> from ulid import ULID
>>> ulid = ULID.new()
>>> ulid.str
'01BTGNYV6HRNK8K8VKZASZCFPE'
>>> ulid.timestamp
1505945939.153
>>> ulid.datetime
datetime.datetime(2017, 9, 20, 22, 18, 59, 153000)
Installation
$ pip install python-ulid
Other implementations
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file python-ulid-0.2.0.tar.gz
.
File metadata
- Download URL: python-ulid-0.2.0.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d3ffa2d2f250648293ad904b98d25776bd2a77ffc957c01f23f3e6cd011b2f8 |
|
MD5 | 423fb74378693798bc9f3437a6f5bd67 |
|
BLAKE2b-256 | 5c9d3c2e8e74e0382dcd858ea106b434989604e8dfe1c4667f4a27f80c97c288 |
Provenance
File details
Details for the file python_ulid-0.2.0-py2-none-any.whl
.
File metadata
- Download URL: python_ulid-0.2.0-py2-none-any.whl
- Upload date:
- Size: 7.6 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f2bea3f19bea6a90138cf7d27a15066c669b3d2e6a4da7e16591a42e907acfd4 |
|
MD5 | e453781f89c30148e095bac7fe59a300 |
|
BLAKE2b-256 | 91afb150840fdfd234ec67a3a6d027e0e68e6317789fa599a28775fafb00c108 |