Thông thường, người ta cần sử dụng ID không tuần tự ở những nơi mà người dùng sẽ nhìn thấy chúng, nhưng ID phải ngắn gọn và dễ sử dụng nhất có thể.
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2 giải quyết vấn đề này bằng cách tạo các uuid bằng cách sử dụng mô-đun
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'4 tích hợp sẵn của Python, sau đó dịch chúng sang cơ sở57 bằng cách sử dụng các chữ cái và chữ số viết thường và viết hoa, đồng thời xóa các ký tự trông giống nhau như l, 1, I, O và 0
Cài đặt
Để cài đặt
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2 bạn cần
Nếu bạn có các phụ thuộc, bạn có nhiều tùy chọn cài đặt
Cách sử dụng
Để sử dụng
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2, chỉ cần nhập nó vào dự án của bạn như vậy
>>> import shortuuid
Sau đó, bạn có thể tạo một UUID ngắn
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'
Nếu bạn thích UUID phiên bản 5 hơn, bạn có thể chuyển tên [DNS hoặc URL] cho cuộc gọi và nó sẽ được sử dụng làm không gian tên [
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'7 hoặc
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'8] cho UUID kết quả________số 8_______
Bạn cũng có thể tạo một chuỗi ngẫu nhiên được bảo mật bằng mật mã [sử dụng nội bộ
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'9] với
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'
Để xem bảng chữ cái đang được sử dụng để tạo UUID mới
>>> shortuuid.get_alphabet[] '23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'
Nếu bạn muốn sử dụng bảng chữ cái của riêng mình để tạo UUID, hãy sử dụng
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'0
>>> shortuuid.set_alphabet["aaaaabcdefgh1230123"] >>> shortuuid.uuid[] '0agee20aa1hehebcagddhedddc0d2chhab3b'
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2 sẽ tự động sắp xếp và xóa các mục trùng lặp khỏi bảng chữ cái của bạn để đảm bảo tính nhất quán
>>> shortuuid.get_alphabet[] '0123abcdefgh'
Nếu 22 chữ số mặc định quá dài đối với bạn, bạn có thể nhận được các ID ngắn hơn bằng cách cắt bớt chuỗi theo độ dài mong muốn. Các ID sẽ không còn là duy nhất trên toàn cầu nữa nhưng xác suất xảy ra xung đột vẫn sẽ rất thấp
Để tuần tự hóa các UUID hiện có, hãy sử dụng
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'2 và
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'3
>>> import uuid >>> u = uuid.uuid4[] >>> u UUID['6ca4f0f8-2508-4bac-b8f1-5d1e3da2247a'] >>> s = shortuuid.encode[u] >>> s 'MLpZDiEXM4VsUryR9oE8uc' >>> shortuuid.decode[s] == u True >>> short = s[:7] >>> short 'MLpZDiE' >>> h = shortuuid.decode[short] UUID['00000000-0000-0000-0000-009a5b27f8b9'] >>> shortuuid.decode[shortuuid.encode[h]] == h True
Sử dụng dựa trên lớp
Nếu bạn cần có nhiều bảng chữ cái khác nhau cho mỗi chuỗi, bạn có thể sử dụng lớp
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'4, như vậy
>>> su = shortuuid.ShortUUID[alphabet="01345678"] >>> su.uuid[] '034636353306816784480643806546503818874456' >>> su.get_alphabet[] '01345678' >>> su.set_alphabet["21345687654123456"] >>> su.get_alphabet[] '12345678'
Sử dụng dòng lệnh
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2 cung cấp một cách đơn giản để tạo UUID ngắn trong thiết bị đầu cuối
$ shortuuid fZpeF6gcskHbSpTgpQCkcJ
trường Django
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'2 bao gồm một trường Django tạo các UUID ngắn ngẫu nhiên theo mặc định, để thuận tiện cho bạn
>>> shortuuid.uuid[] 'vytxeTZskVKR7C7WgdSP3d'0
Trường này giống với trường
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'7, với đối số
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'8 [độ dài của ID], đối số
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'9 và đối số
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'0 đã bị xóa. Mọi thứ khác hoàn toàn giống nhau, e. g.
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'1,
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'2,
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'3, v.v.
lưu ý tương thích
Các phiên bản của ShortUUID trước 1. 0. 0 UUID được tạo bằng MSB của họ lần cuối, tôi. e. đảo ngược. Điều này sau đó đã được khắc phục, nhưng nếu bạn có một số UUID được lưu trữ dưới dạng chuỗi với phương thức cũ, bạn cần chuyển
>>> shortuuid.ShortUUID[].random[length=22] 'RaF56o2r58hTKT7AYS9doj'4 thành
>>> shortuuid.uuid[name="example.com"] 'exu3DTbj2ncsn9tLdLWspw' >>> shortuuid.uuid[name=""] 'shortuuid.uuid[name=""]'3 khi chuyển đổi chuỗi của mình trở lại UUID
Tùy chọn đó sẽ biến mất trong tương lai, vì vậy bạn sẽ muốn chuyển đổi UUID của mình thành chuỗi bằng phương thức mới. Điều này có thể được thực hiện như vậy