وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

ایجاد رشته های هگزادسیمال تصادفی در پایتون

0 24
زمان لازم برای مطالعه: < 1 دقیقه


معرفی

رشته ها و رنگ های هگزا دسیمال به طور مکرر در دنیای برنامه نویسی استفاده می شوند. چه در حال تولید یک شناسه منحصر به فرد یا انتخاب یک رنگ تصادفی برای یک عنصر UI باشید، توانایی تولید رشته ها و رنگ های هگزادسیمال تصادفی ابزار خوبی است که در زرادخانه شما وجود دارد.

در این بایت، روش تولید این رشته های هگزادسیمال تصادفی را در پایتون بررسی خواهیم کرد.

ایجاد رشته های هگزادسیمال تصادفی در پایتون

رشته هگزادسیمال رشته ای از کاراکترهای مجموعه است (0-9، af). آنها اغلب در محاسبات برای نمایش داده های باینری به شکلی که برای انسان قابل خواندن تر است استفاده می شوند.

در اینجا روش ایجاد یک رشته هگزادسیمال تصادفی در پایتون آمده است:

import os

def random_hex_string(length=6):
    return os.urandom(length).hex()

print(random_hex_string())

هنگامی که این اسکریپت را اجرا می کنید، یک رشته هگزادسیمال تصادفی با طول داده شده را خروجی می دهد، که در این مورد به طور پیش فرض 6.

تبدیل اشیاء بایت به رشته

در کد بالا، ما از os.urandom() تابعی برای تولید رشته ای از بایت های تصادفی و سپس تبدیل آن به یک رشته هگزادسیمال با .hex() روش. این بخاطر این است که os.urandom() در واقع یک شی بایت را برمی گرداند، که دنباله ای از اعداد صحیح در محدوده 0 <= x < 256 است، که سپس می تواند به یک رشته هگزا تبدیل شود.

import os

random_bytes = os.urandom(6)
print(type(random_bytes))  

hex_string = random_bytes.hex()
print(type(hex_string))    

در کد بالا ابتدا نوع شی برگردانده شده توسط را چاپ می کنیم os.urandom()، که است <class 'bytes'>. سپس، پس از تبدیل آن به یک رشته شش گوش با .hex() روش، دوباره نوع را چاپ می کنیم، که اکنون است <class 'str'>.

رشته های هگز تصادفی با random.choices()

راه دیگر برای تولید یک رشته هگزادسیمال تصادفی در پایتون استفاده از عبارت است random.choices() تابع. این تابع فهرستی از عناصر انتخاب شده از ورودی تکرارپذیر را با جایگزینی برمی گرداند. در اینجا روش استفاده از آن آورده شده است:

import random
import string

def random_hex_string(length=6):
    return ''.join(random.choices(string.hexdigits, k=length))

print(random_hex_string())

هنگامی که این اسکریپت را اجرا می کنید، یک رشته هگزادسیمال تصادفی با طول مشخص شده را خروجی می دهد. لزوماً بهتر از روش قبلی نیست، اما برای خوانایی، ممکن است برخی از افراد این روش را به استفاده از آن ترجیح دهند os.urandom().

رشته های هگز تصادفی با Secrets.token_hex()

پایتون secrets ماژول، معرفی شده در پایتون 3.6، توابعی را برای تولید اعداد تصادفی امن برای مدیریت اسرار فراهم می کند. یکی از این توابع است secrets.token_hex()، که یک رشته متن تصادفی امن در هگزادسیمال تولید می کند. در اینجا روش استفاده از آن آورده شده است:

import secrets

def random_hex_string(length=6):
    return secrets.token_hex(length)

print(random_hex_string())

هنگامی که این اسکریپت را اجرا می کنید، یک رشته هگزادسیمال تصادفی امن با طول مشخص شده خروجی می دهد.

توجه داشته باشید: این secrets ماژول باید برای تولید داده‌ها برای توکن‌های مخفی، احراز هویت، نشانه‌های امنیتی و موارد مرتبط، که امنیت یک نگرانی است، استفاده شود.

پیشنهاد می‌کنیم بخوانید:  x not in list" خطا در پایتون

نتیجه

در این بایت، روش تولید رشته های هگزادسیمال تصادفی در پایتون را توضیح داده ایم. چه از آخرین نسخه پایتون استفاده کنید چه نسخه قدیمی تر، راه های مختلفی برای رسیدن به این هدف وجود دارد.

(برچسب‌ها به ترجمه)# python



منتشر شده در 1402-12-30 03:56:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید