كيفية إستخدام وحدة Random في بايثون

2
برامج الكمبيوتر وخاصة الألعاب منها تكون ممتعة لو كانت هناك بعض من الأشياء العشوائية ولكن ولسوء الحظ ليس لدينا أي طريقة تمكننا من الاعتماد عليها لتوليد الارقام العشوائية بشكل رائع ومع ذلك فان معظم لغات البرمجة ومنها بايثون تتضمن بعض الدوال التي تقوم بتوليد الأرقام الشبه العشوائية وتقوم هذه الدوال بعمل بعض الخطوات لتقوم بعرض الارقام بطريقة عشوائية.
يصعب على أجهزة الكمبيوتر توليد أرقام عشوائية حقيقية وهي تحتاج الى عتاد خاص لتوليد ارقام عشوائية حقيقية ولكنها عملية معقدة وباهضة لذلك نقوم بالإكتفاء بما تقدمه لغات البرمجة من عملية التوليد الشبه العشوائية .


الأرقام العشوائية في البرامج تسمح لنا بلعب ألعاب نجهل احداثها المستقبلية بسبب عشوائية المراحل .
سبق لي وان تكلمت عن دالة randrange  الموجودة في وحدة Random بشكل سريع ومختصر ولكن اليوم سنتلكم عن مجموعة اخرى من الدوال الموجودة في وحدة Random .
تتيح لنا  وحدة Random إمكانية الوصول مجموعة كبيرة من الوظائف والدوال ومن أهمها تلك التي تسمح لنا بتوليد الأرقام العشوائية .
متى نستعمل وحدة Random
نحتاج وحدة Random عندما نريد من الكمبيوتر ان يقوم بإختيار رقم معين في مجال محدد وهي ليست مخصصة للأرقام وفقط بل يمكننا اختيار عناصر عشوائية من القوائم القواميس والكثير من الأمور الاخرى .
دوال وحدة Random
كما وسبق أن قلت ان هذه الوحدة تحتوي على الكثير من الدوال والوظائف التي تساعدنا في أعمالنا وسنقوم بعرض مجموعة مفيدة من تلك الدوال .
  • Randint
إذا كنت تريد أن تقوم بتوليد أعداد صحيحة عشوائيا نقوم بإستخدام الدالة Randint  وهي تقبل قيمتين :
القيمة الادنى والقيمة الأعلى ويتم ضمهما معا في نطاق هملية الإختيار العشوائية ولتوضيح العملية أكثر ناخذ مثال :

لتوليد رقم عشوائي من 1 الى 5 نقوم بكتابة الكود التالي :

import random
print random.randint(0, 5)
وستكون النتيجة رقم عشوائي من الأرقام التالية : 1،2،3،4،5
  • Random
اذا كنت تريد ارقام وأعداد كبيرة يمكننا إستخدام العلامة الرياضية الضرب .
المثال التالي سيقوم بعرض رقم عشواي من 0 الى 100

import random
random.random() * 100

  • choice
إذا كنت تريد عرض قيمة عشواية من القوائم نقوم بإستخدام الدالة choice
البرنامج التالي سيقوم بعرض نتائج مختلفة في كل مرة يتم تشغيل فيها البرنامج

My_list=["Dz","Ma","Tn"]
random.choice(My_list)

  • Shuffle

تقوم هذه الدالة بإعادة توزيع  عناصر القائمة عشوائيا دعونا نأخذ مثال لتوضيح الأمر أكثر
import random

list = [20, 16, 10, 5];
random.shuffle(list)
print  list

random.shuffle(list)
print  list
وستكون النتيجة
[16,5,10,20]
[16,5,20,10]


  • Randrange
تقوم هذه الدالة بعرض قيمة عشوائية من مجموعة من العناصر التي تم تعيينها مسبقا








range(الخطوة النهاية البداية ).

البداية : الرقم التي تبدأ منها عملية الإختيار العشوائية ويمكن ان يكون هذا الرقم ضمن نطاق الارقام العشوائية.
النهاية : الرقم أو العدد الذي تنتهي عنده عملية الاختيار العشوائية ولا يمكن ان يكون هذا الرقم ضمن نطاق الارقام العشوائية .
الخطوة: هذه الخاصية تمثل الرقم الذي يقوم البرنامج لاضافته للرقم العشوائي .
دعونا ناخذ مثال عن العملية

import random

#إختيار رقم عشوائي من 100 الى 1000 
random.randrange(100, 1000, 2)

# إختيار رقم عشوائي من 100 الى 1000
random.randrange(100, 1000, 3)


التعليقات

  1. جزاك الله خيرا أخي

    ردحذف
  2. استمر فأنا أتابعك منذ مدة وأرى مواضيعك دسمة ومفيدة شكرًا لك

    ردحذف