مراجعة علي مكتبة "random"

شرح لمكتبة “random” في بايثون باستخدام “deepseek” و تذكر ان عليك ركوب الموجة لا ان تسير عكسها.

مكتبة random في بايثون تُستخدم لتوليد أرقام عشوائية. تُعتبر هذه المكتبة مفيدة في العديد من التطبيقات مثل الألعاب، المحاكاة، الاختيار العشوائي للبيانات، وغيرها. فيما يلي شرح لبعض الوظائف الشائعة في مكتبة random:

1. استيراد المكتبة

قبل استخدام أي وظيفة من مكتبة random، يجب استيرادها أولاً:

import random

2. الوظائف الشائعة

random.random()

تُرجع هذه الوظيفة عدد عشوائي بين 0.0 و 1.0 (بما في ذلك 0.0 ولكن لا يشمل 1.0).

import random

num = random.random()
print(num)  # مثال للإخراج: 0.645173684807533

random.randint(a, b)

تُرجع هذه الوظيفة عدد صحيح عشوائي بين a و b (بما في ذلك a و b).

import random

num = random.randint(1, 10)
print(num)  # مثال للإخراج: 7

random.choice(sequence)

تُرجع هذه الوظيفة عنصرًا عشوائيًا من التسلسل المحدد (قائمة، مجموعة، نص، إلخ).

import random

my_list = [1, 2, 3, 4, 5]
random_element = random.choice(my_list)
print(random_element)  # مثال للإخراج: 3

random.shuffle(sequence)

تقوم هذه الوظيفة بخلط العناصر في التسلسل المحدد (مثل قائمة) بشكل عشوائي.

import random

my_list = [1, 2, 3, 4, 5]
random.shuffle(my_list)
print(my_list)  # مثال للإخراج: [3, 1, 5, 2, 4]

random.sample(population, k)

تُرجع هذه الوظيفة قائمة تحتوي على k عناصر فريدة تم اختيارها عشوائيًا من التسلسل المحدد.

import random

my_list = [1, 2, 3, 4, 5]
sample_list = random.sample(my_list, 3)
print(sample_list)  # مثال للإخراج: [2, 5, 1]

random.uniform(a, b)

تُرجع هذه الوظيفة عدد عشوائي عائم بين a و b (بما في ذلك a و b).

import random

num = random.uniform(1.5, 4.5)
print(num)  # مثال للإخراج: 3.789123456789

random.seed(a=None)

تُستخدم هذه الوظيفة لتهيئة مولد الأعداد العشوائية. إذا تم استخدام نفس القيمة للبذرة (seed)، سيتم توليد نفس التسلسل العشوائي في كل مرة.

import random

random.seed(10)
print(random.random())  # الإخراج سيكون دائمًا نفس القيمة إذا كانت البذرة 10

3. أمثلة إضافية

اختيار عنصر عشوائي من نص

import random

text = "Hello, World!"
random_char = random.choice(text)
print(random_char)  # مثال للإخراج: 'o'

خلط مجموعة من الأرقام

import random

numbers = list(range(1, 11))
random.shuffle(numbers)
print(numbers)  # مثال للإخراج: [7, 2, 9, 1, 5, 10, 3, 6, 4, 8]

توليد أرقام عشوائية مع بذرة محددة

import random

random.seed(42)
print(random.random())  # الإخراج: 0.6394267984578837
print(random.random())  # الإخراج: 0.025010755222666936

4. ملاحظات

  • الأرقام العشوائية التي يتم توليدها بواسطة مكتبة random هي أرقام شبه عشوائية (pseudo-random)، أي أنها تُولد باستخدام خوارزمية محددة وليست عشوائية تمامًا.
  • إذا كنت بحاجة إلى أرقام عشوائية لأغراض أمنية (مثل توليد مفاتيح تشفير)، يجب استخدام مكتبة secrets بدلاً من random.
import secrets

secure_random = secrets.randbelow(10)
print(secure_random)  # مثال للإخراج: 7

هذا شرح أساسي لاستخدام مكتبة random في بايثون. يمكنك استخدام هذه الوظائف في العديد من التطبيقات المختلفة حسب احتياجاتك.

5 إعجابات