પાયથોનમાં રેન્ડમ દશાંશ અને પૂર્ણાંકો જનરેટ કરવું, જેમાં રેન્ડમ(), રેન્ડ્રેન્જ(), અને રેન્ડિંટ()નો સમાવેશ થાય છે

બિઝનેસ

પાયથોન સ્ટાન્ડર્ડ લાઇબ્રેરીના રેન્ડમ મોડ્યુલમાં રેન્ડમ(), યુનિફોર્મ(), રેન્ડેન્જ(), અને રેન્ડન્ટ() ફંક્શનનો ઉપયોગ કરીને રેન્ડમ નંબરો જનરેટ કરી શકાય છે.

રેન્ડમ મોડ્યુલ પ્રમાણભૂત લાઇબ્રેરીમાં શામેલ છે, તેથી કોઈ વધારાના ઇન્સ્ટોલેશનની જરૂર નથી. અલબત્ત, તમારે તેને આયાત કરવાની જરૂર છે.

નીચેની માહિતી અહીં આપવામાં આવી છે.

  • random.random()(0.0 અને 1.0 વચ્ચે ફ્લોટિંગ પોઈન્ટ નંબર)
  • random.uniform()(ફ્લોટિંગ પોઈન્ટ નંબરોની કોઈપણ શ્રેણી)
  • રેન્ડમ નંબરો બનાવો જે સામાન્ય વિતરણ, ગૌસીયન વિતરણ વગેરેને અનુસરે છે.
  • random.randrange()(મનસ્વી શ્રેણી અને પગલાનું પૂર્ણાંક)
  • random.randint()(કોઈપણ શ્રેણીમાં પૂર્ણાંક)
  • ઘટકો તરીકે રેન્ડમ નંબરો સાથે સૂચિ બનાવી રહ્યું છે
    • રેન્ડમ ફ્લોટિંગ-પોઇન્ટ નંબરોની સૂચિ
    • પૂર્ણાંક રેન્ડમ સંખ્યાઓની સૂચિ
  • રેન્ડમ નંબર જનરેટર શરૂ કરો (રેન્ડમ નંબર સીડને ઠીક કરો)

સૂચિના ઘટકોને અવ્યવસ્થિત રીતે કેવી રીતે કાઢવા અથવા સૉર્ટ કરવા તેના પર નીચેનો લેખ જુઓ.

random.random()(0.0 અને 1.0 વચ્ચે ફ્લોટિંગ પોઈન્ટ નંબર)

રેન્ડમ મોડ્યુલનું ફંક્શન રેન્ડમ() 0.0 અને 1.0 ની વચ્ચેના ફ્લોટનો રેન્ડમ ફ્લોટિંગ-પોઇન્ટ નંબર જનરેટ કરે છે.

import random

print(random.random())
# 0.4496839011176701

random.uniform()(ફ્લોટિંગ પોઈન્ટ નંબરોની કોઈપણ શ્રેણી)

uniform(a, b)આ રેન્ડમ મોડ્યુલના કાર્યો નીચેની કોઈપણ રેન્જમાં ફ્લોટિંગ-પોઇન્ટ નંબર ફ્લોટ પ્રકારના રેન્ડમ નંબરો જનરેટ કરે છે

  • a <= n <= b
  • b <= n <= a
import random

print(random.uniform(100, 200))
# 175.26585048238275

બે દલીલો કાં તો મોટી અથવા નાની હોઈ શકે છે; જો તેઓ સમાન હોય, તો તેઓ કુદરતી રીતે જ તે મૂલ્ય પરત કરશે. વળતર મૂલ્ય હંમેશા ફ્લોટ છે.

print(random.uniform(100, -100))
# -27.82338731501028

print(random.uniform(100, 100))
# 100.0

દલીલને ફ્લોટ તરીકે પણ સ્પષ્ટ કરી શકાય છે.

print(random.uniform(1.234, 5.637))
# 2.606743596829249

શું b નું મૂલ્ય શ્રેણીમાં સમાવવામાં આવેલ છે તે દસ્તાવેજીકરણ મુજબ નીચેના રાઉન્ડિંગ પર આધાર રાખે છે.
a + (b-a) * random.random()

અંતિમ બિંદુ મૂલ્ય b શ્રેણીમાં છે કે નહીં તે નીચેના સમીકરણમાં ફ્લોટિંગ પોઈન્ટ રાઉન્ડિંગ પર આધારિત છે
a + (b-a) * random()
random.uniform() — Generate pseudo-random numbers — Python 3.10.2 Documentation

રેન્ડમ નંબરો બનાવો જે સામાન્ય વિતરણ, ગૌસીયન વિતરણ વગેરેને અનુસરે છે.

ઉપરના રેન્ડમ() અને યુનિફોર્મ() ફંક્શન એકસરખી રીતે વિતરિત રેન્ડમ નંબરો જનરેટ કરે છે, પરંતુ ફ્લોટિંગ પોઈન્ટ નંબર્સ જનરેટ કરવા માટે ફંક્શન્સ પણ છે જે નીચેના વિતરણને અનુસરે છે.

  • બીટા વિતરણ:random.betavariate()
  • ઘાતાંકીય વિતરણ:random.expovariate()
  • ગામા વિતરણ:random.gammavariate()
  • ગૌસીયન વિતરણ:random.gauss()
  • સામાન્ય વિતરણ:random.lognormvariate()
  • સામાન્ય વિતરણ:random.normalvariate()
  • વોન મિસેસ વિતરણ:random.vonmisesvariate()
  • પેરેટો વિતરણ:random.paretovariate()
  • વેઇબુલ વિતરણ:random.weibullvariate()

દરેક વિતરણના પરિમાણો દલીલો દ્વારા નિર્દિષ્ટ કરવામાં આવે છે. વિગતો માટે સત્તાવાર દસ્તાવેજો જુઓ.

random.randrange()(મનસ્વી શ્રેણી અને પગલાનું પૂર્ણાંક)

randrange(start, stop, step)
આ રેન્ડમ મોડ્યુલનું કાર્ય નીચેના ઘટકોમાંથી અવ્યવસ્થિત રીતે પસંદ કરેલ તત્વ પરત કરે છે.
range(start, stop, step)

range() ની જેમ, દલીલો પ્રારંભ અને પગલું અવગણી શકાય છે. જો તેઓ અવગણવામાં આવે, તો start=0 અને step=1.

import random

print(list(range(10)))
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

print(random.randrange(10))
# 5

દલીલનું પગલું એક સમાન અથવા વિષમ રેન્ડમ પૂર્ણાંક અથવા રેન્ડમ પૂર્ણાંક કે જે ત્રણનો ગુણાંક છે જનરેટ કરવા માટે સેટ કરી શકાય છે.

ઉદાહરણ તરીકે, જો શરુઆત સમ અને step=2 હોય, તો શ્રેણીમાં માત્ર પૂર્ણાંકો જ રેન્ડમ રીતે મેળવી શકાય છે.

print(list(range(10, 20, 2)))
# [10, 12, 14, 16, 18]

print(random.randrange(10, 20, 2))
# 18

random.randint()(કોઈપણ શ્રેણીમાં પૂર્ણાંક)

randint(a, b)
આ રેન્ડમ મોડ્યુલનું કાર્ય નીચેની રેન્ડમ પૂર્ણાંક પૂર્ણાંક આપે છે.
a <= n <= b
randrange(a, b + 1)આની સમકક્ષ; નોંધ કરો કે b ની કિંમત પણ શ્રેણીમાં શામેલ છે.

print(random.randint(50, 100))
# print(random.randrange(50, 101))
# 74

ઘટકો તરીકે રેન્ડમ નંબરો સાથે સૂચિ બનાવી રહ્યું છે

આ વિભાગમાં, અમે એલિમેન્ટ તરીકે રેન્ડમ નંબરો સાથે યાદી બનાવવા માટે માનક પુસ્તકાલયના રેન્ડમ મોડ્યુલનો ઉપયોગ કેવી રીતે કરવો તે સમજાવીશું.

ફ્લોટિંગ-પોઇન્ટ ફ્લોટ્સ સાથે રેન્ડમ નંબરોની સૂચિ

એક સૂચિ બનાવવા માટે કે જેના તત્વો ફ્લોટિંગ-પોઇન્ટ રેન્ડમ નંબરો છે, રેન્ડમ() અને યુનિફોર્મ() ફંક્શનને સૂચિ સમજણ સંકેત સાથે જોડો.

import random

print([random.random() for i in range(5)])
# [0.5518201298350598, 0.3476911314933616, 0.8463426180468342, 0.8949046353303931, 0.40822657702632625]

ઉપરના ઉદાહરણમાં, range() નો ઉપયોગ કરવામાં આવ્યો છે, પરંતુ સૂચિઓ અને ટ્યુપલ્સ પણ તત્વોની ઇચ્છિત સંખ્યા માટે શક્ય છે. સૂચિની સમજણ પર વધુ વિગતો માટે, કૃપા કરીને નીચેના લેખનો સંદર્ભ લો.

પૂર્ણાંક પૂર્ણાંક રેન્ડમ સંખ્યાઓની સૂચિ

જ્યારે સૂચિ જનરેટ કરતી વખતે કે જેના ઘટકો પૂર્ણાંક રેન્ડમ નંબરો છે, ઉપરોક્ત રેન્ડેન્જ() અને રેન્ડિંટ() ને સૂચિ સમજણ સંકેત સાથે જોડવાથી ડુપ્લિકેટ મૂલ્યો પરિણમી શકે છે.

print([random.randint(0, 10) for i in range(5)])
# [8, 5, 7, 10, 7]

જો તમે ડુપ્લિકેશન વિના પૂર્ણાંકોનો રેન્ડમ ક્રમ બનાવવા માંગતા હો, તો random.sample() નો ઉપયોગ કરીને મનસ્વી શ્રેણી સાથે range() ના તત્વોને બહાર કાઢો.

print(random.sample(range(10), k=5))
# [6, 4, 3, 7, 5]

print(random.sample(range(100, 200, 10), k=5))
# [130, 190, 140, 150, 170]

random.sample() વિશે વધુ માહિતી માટે, કૃપા કરીને નીચેના લેખનો સંદર્ભ લો.

રેન્ડમ નંબર જનરેટર શરૂ કરો (રેન્ડમ નંબર સીડને ઠીક કરો)

રેન્ડમ મોડ્યુલના ફંક્શન સીડ() ને મનસ્વી પૂર્ણાંક આપીને, રેન્ડમ નંબર સીડને નિશ્ચિત કરી શકાય છે અને રેન્ડમ નંબર જનરેટરને પ્રારંભ કરી શકાય છે.

સમાન બીજ સાથે પ્રારંભ કર્યા પછી, રેન્ડમ મૂલ્ય હંમેશા તે જ રીતે જનરેટ થાય છે.

random.seed(0)
print(random.random())
# 0.8444218515250481

print(random.random())
# 0.7579544029403025

random.seed(0)
print(random.random())
# 0.8444218515250481

print(random.random())
# 0.7579544029403025
Copied title and URL