কম্পিউটার টিউটোরিয়াল

পাইথনে UUID ব্যবহার করে র‍্যান্ডম আইডি জেনারেট করা

UUID-এর পূর্ণরূপ Universal Unique Identifier, এটি একটি পাইথন লাইব্রেরি যা ১২৮ বিটস আইডি সাপোর্ট করে র‍্যান্ডম অবজেক্ট জেনারেট করার জন্য।

UUID-এর সুবিধা

  • আলোচনা করা হয়েছে, আমরা এটি ব্যবহার করে র‍্যান্ডম অবজেক্টের জন্য ইউনিক র‍্যান্ডম আইডি জেনারেট করতে পারি।
  • ক্রিপ্টোগ্রাফি এবং হ্যাশিং অ্যাপ্লিকেশনের জন্য এই আইডি ব্যবহার করা যায়।
  • র‍্যান্ডম ডকুমেন্ট এবং অ্যাড্রেস ইত্যাদি জেনারেট করার জন্যও এই আইডি ব্যবহার করা যায়।

পদ্ধতি ১

uuid1() ব্যবহার করে

উদাহরণ কোড

import uuid
print("Random id using uuid1() is : ", end="")
print(uuid.uuid1())

আউটপুট

Random id using uuid1() is : 4adeede2-e5d8-11e8-bd27-185e0fd4f8b3

uuid1()-র রিপ্রেজেন্টেশনগুলো

bytes − ১৬ বাইট স্ট্রিং ফরম্যাটে আইডি ফেরত দেয়।

int − ১২৮-বিট ইন্টিজার ফরম্যাটে আইডি ফেরত দেয়।

hex − ৩২ ক্যারেক্টার হেক্সাডেসিমেল স্ট্রিং হিসেবে র‍্যান্ডম আইডি ফেরত দেয়।

uuid1()-র কম্পোনেন্টগুলো

version − UUID-এর ভার্সন নম্বর।

variant − UUID-এর ইন্টারন্যাল লেআউট নির্ধারণ করে।

uuid1()-র ফিল্ডগুলো

time_low − আইডির প্রথম ৩২ বিট ইন্ডিকেট করে।

time_mid − আইডির পরবর্তী ১৬ বিট ইন্ডিকেট করে।

time_hi_version − আইডির পরবর্তী ১৬ বিট ইন্ডিকেট করে।

clock_seq_hi_variant − পরবর্তী ৮ বিট ইন্ডিকেট করে।

clock_seq_low − পরবর্তী ৮ বিট ইন্ডিকেট করে।

node − শেষ ৪৮ বিট ইন্ডিকেট করে।

time − আইডির টাইম কম্পোনেন্ট ফিল্ড ইন্ডিকেট করে।

clock_seq − ১৪ বিট সিকোয়েন্স নম্বর ইন্ডিকেট করে।

উদাহরণ কোড

import uuid
id = uuid.uuid1()

# uuid1()-র রিপ্রেজেন্টেশনগুলো
print("Different Representations of uuid1() are : ")
print("Representation in byte : ", end="")
print(repr(id.bytes))
print("Representation in int : ", end="")
print(id.int)
print("Representation in hex : ", end="")
print(id.hex)
print("\n")

# uuid1()-র কম্পোনেন্টগুলো
print("Different Components of uuid1() are : ")
print("UUID Version : ", end="")
print(id.version)
print("UUID Variant : ", end="")
print(id.variant)
print("\n")

# uuid1()-র ফিল্ডগুলো
print("Fields of uuid1() are : ")
print("UUID Fields : ", end="")
print(id.fields)
print("\n")

# uuid1() টাইম কম্পোনেন্ট
print("uuid1() time Component is : ")
print("Time component : ", end="")
print(id.node)

আউটপুট

Different Representations of uuid1() are :
Representation in byte : b'\x1a\xd2\xa7F\xe5\xe4\x11\xe8\xbd\x9c\x18^\x0f\xd4\xf8\xb3'
Representation in int : 35653703010223099234452630771665795251
Representation in hex : 1ad2a746e5e411e8bd9c185e0fd4f8b3

Different Components of uuid1() are :
UUID Version : 1
UUID Variant : specified in RFC 4122
Fields of uuid1() are :
UUID Fields : (450012998, 58852, 4584, 189, 156, 26792271607987)

uuid1() time Component is :
Time component : 26792271607987

পদ্ধতি ২

uuid4() ব্যবহার করে

উদাহরণ কোড

import uuid
id = uuid.uuid4()
# uuid4() ব্যবহার করে জেনারেটেড আইডি
print("The id generated using uuid4() : ", end="")
print(id)

আউটপুট

The id generated using uuid4() : 21764219-e3d9-4bd3-a768-0bbc6e376bc0
  1. পাইথনে netrc ফাইল প্রসেস করা (ইউনিক্স সিস্টেমে লগইন ক্রিডেনশিয়াল)

  2. পাইথনে ক্যালেন্ডার প্রিন্ট করা

  3. পাইথনে POST মেথড ব্যবহার করে তথ্য পাস করা

  4. পাইথনে cx_Freeze ব্যবহার করে এক্সিকিউটেবল বানানো