Cách tạo id duy nhất gồm 8 chữ số trong Python

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

Làm cách nào tôi có thể tạo một ID duy nhất trong Python?

UUID, Mã định danh duy nhất toàn cầu, là một thư viện python giúp tạo các đối tượng ngẫu nhiên 128 bit dưới dạng id . Nó cung cấp tính duy nhất vì nó tạo id trên cơ sở thời gian, Phần cứng máy tính [MAC, v.v. ]. Ưu điểm của UUID. Có thể được sử dụng làm tiện ích chung để tạo id ngẫu nhiên duy nhất.

Làm cách nào tôi có thể tạo ID duy nhất?

Bạn có thể tạo một giá trị duy nhất bằng công thức trong bảng tính . Tuy nhiên, một ID phải là một giá trị, không phải là một công thức, vì vậy hãy sao chép [Ctrl+C] và dán dưới dạng văn bản thuần túy [Shift+Ctrl+V] kết quả của phép tính công thức vào ô có chứa ID mới. Thats tất cả để có nó.

Làm cách nào để tạo ID đơn hàng duy nhất trong django?

bạn có thể sử dụng uuid và sử dụng uuid này cho tất cả tra cứu trong tập hợp chế độ xem, thay vì id được tạo tuần tự bởi django . một cái gì đó như thế này lookup_field = 'uuid' trong chế độ xem. Lưu câu trả lời này.

Chủ Đề