أرقام عشوائية في بايثون
تحدد لغة بايثون مجموعة من الوظائف التي تُستخدم لإنشاء أرقام عشوائية أو معالجتها من خلال وحدة عشوائية.
وظائف في وحدة عشوائية تعتمد على دالة مولد الأرقام العشوائية الزائفة Random() التي تولد رقمًا عشوائيًا بين 0.0 و1.0. يتم استخدام هذا النوع المحدد من الوظائف في الكثير من ألعاب اليانصيب أو أي تطبيق يتطلب إنشاء أرقام عشوائية.
دعونا نرى مثالا لتوليد عشوائي رقم في بايثون باستخدام وظيفة عشوائية ().
Python import random num = random . random () print ( num )
الإخراج:
0.30078080420602904طرق مختلفة لتوليد رقم عشوائي في بايثون
هناك عدة طرق لتوليد أرقام عشوائية في بايثون باستخدام وظائف وحدة بايثون العشوائية. دعونا نرى بعض الطرق المختلفة.
توليد رقم عشوائي باستخدام الاختيار ()
بايثون اختيار عشوائي () هي وظيفة مدمجة في لغة برمجة بايثون تقوم بإرجاع عنصر عشوائي من ملف قائمة مترابطة بيانية أو خيط .
Python# import random import random # prints a random value from the list list1 = [ 1 2 3 4 5 6 ] print ( random . choice ( list1 )) # prints a random item from the string string = 'striver' print ( random . choice ( string ))الإخراج:
5
tتوليد رقم عشوائي باستخدام randrange()
توفر الوحدة العشوائية وظيفة يمكنها إنشاء أرقام عشوائية لـ Python من نطاق محدد وتتيح أيضًا مساحة لتضمين الخطوات التي يتم استدعاؤها راندرانج () .
Python# importing 'random' for random operations import random # using choice() to generate a random number from a # given list of numbers. print ( 'A random number from list is : ' end = '' ) print ( random . choice ([ 1 4 8 10 3 ])) # using randrange() to generate in range from 20 # to 50. The last parameter 3 is step size to skip # three numbers when selecting. print ( 'A random number from range is : ' end = '' ) print ( random . randrange ( 20 50 3 ))الإخراج:
A random number from list is : 4
A random number from range is : 41توليد رقم عشوائي باستخدام البذور ()
بايثون بذور عشوائية () تُستخدم الوظيفة لحفظ حالة الوظيفة العشوائية حتى تتمكن من إنشاء بعض الأرقام العشوائية في Python عند تنفيذ عدة تعليمات برمجية على نفس الجهاز أو على أجهزة مختلفة (لقيمة أولية محددة). قيمة البذرة هي رقم القيمة السابقة التي تم إنشاؤها بواسطة المولد. لأول مرة عندما لا تكون هناك قيمة سابقة، فإنه يستخدم وقت النظام الحالي.
Python# importing 'random' for random operations import random # using random() to generate a random number # between 0 and 1 print ( 'A random number between 0 and 1 is : ' end = '' ) print ( random . random ()) # using seed() to seed a random number random . seed ( 5 ) # printing mapped random number print ( 'The mapped random number with 5 is : ' end = '' ) print ( random . random ()) # using seed() to seed different random number random . seed ( 7 ) # printing mapped random number print ( 'The mapped random number with 7 is : ' end = '' ) print ( random . random ()) # using seed() to seed to 5 again random . seed ( 5 ) # printing mapped random number print ( 'The mapped random number with 5 is : ' end = '' ) print ( random . random ()) # using seed() to seed to 7 again random . seed ( 7 ) # printing mapped random number print ( 'The mapped random number with 7 is : ' end = '' ) print ( random . random ())الإخراج:
A random number between 0 and 1 is : 0.510721762520941
The mapped random number with 5 is : 0.6229016948897019
The mapped random number with 7 is : 0.32383276483316237
The mapped random number with 5 is : 0.6229016948897019
The mapped random number with 7 is : 0.32383276483316237توليد رقم عشوائي باستخدام shuffle()
ال خلط() يتم استخدام الوظيفة لخلط تسلسل (قائمة). الخلط يعني تغيير موضع عناصر التسلسل. وهنا تتم عملية الخلط.
Python# import the random module import random # declare a list sample_list = [ 'A' 'B' 'C' 'D' 'E' ] print ( 'Original list : ' ) print ( sample_list ) # first shuffle random . shuffle ( sample_list ) print ( ' n After the first shuffle : ' ) print ( sample_list ) # second shuffle random . shuffle ( sample_list ) print ( ' n After the second shuffle : ' ) print ( sample_list )الإخراج:
Original list :
['A' 'B' 'C' 'D' 'E']
After the first shuffle :
['A' 'B' 'E' 'C' 'D']
After the second shuffle :
['C' 'E' 'B' 'D' 'A']توليد رقم عشوائي باستخدام الزي الرسمي()
ال زي مُوحد() تُستخدم الدالة لإنشاء رقم عشوائي بنقطة عائمة في Python بين الأرقام المذكورة في وسيطاتها. يستغرق الأمر وسيطتين: الحد الأدنى (المضمن في الإنشاء) والحد الأعلى (غير متضمن في الإنشاء).
Python# Python code to demonstrate the working of # shuffle() and uniform() # importing 'random' for random operations import random # Initializing list li = [ 1 4 5 10 2 ] # Printing list before shuffling print ( 'The list before shuffling is : ' end = '' ) for i in range ( 0 len ( li )): print ( li [ i ] end = ' ' ) print ( ' r ' ) # using shuffle() to shuffle the list random . shuffle ( li ) # Printing list after shuffling print ( 'The list after shuffling is : ' end = '' ) for i in range ( 0 len ( li )): print ( li [ i ] end = ' ' ) print ( ' r ' ) # using uniform() to generate random floating number in range # prints number between 5 and 10 print ( 'The random floating point number between 5 and 10 is : ' end = '' ) print ( random . uniform ( 5 10 ))الإخراج:
The list before shuffling is : 1 4 5 10 2
The list after shuffling is : 2 1 4 5 10
The random floating point number between 5 and 10 is : 5.183697823553464