Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में यादृच्छिक आईडी बनाना

हम नमूना डेटा के लिए अपनी परियोजना में एक यादृच्छिक संख्या उत्पन्न करने के लिए उपयोग करते हैं, जिसे बाद में परीक्षण के लिए उपयोग किया जा सकता है, खाली कॉलम या कई अन्य उद्देश्यों के लिए उपयोग किया जा सकता है, मुख्य बात यह है कि हमें यादृच्छिक डेटा उत्पन्न करने की आवश्यकता है। पायथन में, यादृच्छिक डेटा उत्पन्न करने के कई तरीके हैं और हम इस लेख में उनमें से कुछ का पता लगाने जा रहे हैं -

पायथन रैंडम () मॉड्यूल

महत्वपूर्ण पुस्तकालय में से एक, जो अजगर के साथ आता है वह यादृच्छिक है और हम इसे अपने पूरे कोड में उपयोग करने जा रहे हैं।

अपने कोड में इस मॉड्यूल का उपयोग करने के लिए, आपको बस इसे आयात करने की आवश्यकता है, बस इतना ही और हम इसका उपयोग करने के लिए तैयार हैं।

यादृच्छिक आयात करें

आइए देखें कि इसका उपयोग कैसे करें -

import randomprint("मुझे क्या मिलेगा, पता नहीं क्योंकि मैं random.random ()") प्रिंट (random.random ()) का उपयोग कर रहा हूं।

आउटपुट

मुझे क्या मिलेगा, पता नहीं क्योंकि मैं random.random()0.5306626723173611
का उपयोग कर रहा हूं।

दूसरी बार, अगर मैं एक ही प्रोग्राम चलाने की कोशिश करता हूं- तो आपको अलग आउटपुट मिलेगा -

मुझे क्या मिलेगा, पता नहीं क्योंकि मैं random.random()0.5504289430397661
का उपयोग कर रहा हूं

यादृच्छिक मॉड्यूल पर कुछ बिंदु:

  • random() रैंडम मॉड्यूल का मूल कार्य है
  • रैंडम मॉड्यूल के लगभग सभी फ़ंक्शन रैंडम () फ़ंक्शन का उपयोग करते हैं।
  • रैंडम () फ़ंक्शन [0.0 से 1.0) के बीच कोई भी संख्या जनरेट करेगा।

पायथन में यादृच्छिक पूर्णांक संख्या उत्पन्न करें

दो कार्यों के नीचे हम यादृच्छिक पूर्णांक उत्पन्न करने के लिए उपयोग कर रहे हैं -

  • रैंडिंट ()
  • रैंडरेंज ()
यादृच्छिक आयात से randint, randrangeprint("यादृच्छिक पूर्णांक प्रिंट करना", randint(0, 20))print("यादृच्छिक पूर्णांक प्रिंट करना", randrange(0, 20, 2))

आउटपुट

यादृच्छिक पूर्णांक मुद्रित करना 15यादृच्छिक पूर्णांक 4 मुद्रित करना

किसी सूची से यादृच्छिक रूप से कोई आइटम चुनें

विचार करें कि हमारे पास कंपनियों के नाम की एक सूची है और हम उस सूची से एक आइटम (कंपनी का नाम) प्राप्त करना चाहते हैं। हम इसे इसके द्वारा प्राप्त कर सकते हैं,

import randomcompanies =['RELIANCE', 'TCS', 'INFY', 'SBI', 'PNB','HDFC']print('Randomly Select company from a list:', random.choice(companies)) 

आउटपुट

किसी सूची से कंपनी का बेतरतीब ढंग से चयन करना:INFY

किसी सूची से कई आइटम का बेतरतीब ढंग से चयन करना

उपरोक्त उदाहरण पर विचार करें, लेकिन एक आइटम (कंपनी) के बजाय हम एक सूची से कई आइटम (कंपनियों) को यादृच्छिक रूप से चुनना चाहते हैं, हम इसे random.sample() फ़ंक्शन के माध्यम से प्राप्त कर सकते हैं -

import randomcompanies =['RELIANCE', 'TCS', 'INFY', 'SBI', 'PNB','HDFC']print('Randomly से 3 कंपनियों को एक सूची से चुनना:', random.sample(कंपनियां, 3))

आउटपुट

किसी सूची में से 3 कंपनियों को बेतरतीब ढंग से चुनना:['TCS', 'RELIANCE', 'INFY']

हालांकि, अगर हम सूची में आइटम की संख्या से अधिक आइटम का चयन करने का प्रयास करते हैं, तो हमें ValueError -

का सामना करना पड़ता है।

इनपुट -

random.sample(कंपनियां,20)

आउटपुट -

ValueError:नमूना जनसंख्या से बड़ा या नकारात्मक है

एक सूची से कई रैंडम आइटम चुनने का दूसरा तरीका है - random.choices()।

import randomcompanies =['RELIANCE', 'TCS', 'INFY', 'SBI', 'PNB','HDFC']print('Randomly सेलेक्टिंग 3 कंपनियों को एक सूची से:', random.choices(कंपनियां, के=6))

आउटपुट

किसी सूची में से 3 कंपनियों को यादृच्छिक रूप से चुनना:['TCS', 'TCS', 'INFY', 'HDFC', 'INFY', 'TCS']

जैसा कि हम उपरोक्त आउटपुट से देख सकते हैं, हम random.choices() विधि का उपयोग करने पर सूची से एक डुप्लिकेट आइटम प्राप्त कर सकते हैं।

पायथन में छद्म यादृच्छिक संख्या जनरेटर

छद्म यादृच्छिक संख्या जनरेटर एक मूल्य पर कुछ ऑपरेशन करके काम करता है। आम तौर पर, यह मान जनरेटर द्वारा उत्पन्न पिछली संख्या है। हालांकि, पहली बार जब आप जनरेटर का उपयोग करते हैं, तो कोई पिछला मूल्य नहीं होता है।

 इम्पोर्ट रैंडमप्रिंट ("बीज वैल्यू 10:") ) # इस बार हम अलग-अलग मान प्राप्त करेंगेrandom.seed(5) for i in range(5):print(random.randint(1,100))print()print("Seed value:10") # समान परिणाम मिलेगा , हमें शुरुआत में क्या मिला हैrandom.seed(10) for i in range(5):print(random.randint(1,100))

आउटपुट

बीज मूल्य 10:745556274बीज मूल्य 5:8033954689बीज मूल्य:10745556274

जैसा कि हम उपरोक्त उदाहरण से देखते हैं, यदि बीज समान है, तो यह पहला पिछला मान उत्पन्न करता है। प्रत्येक बीज मान किसी दिए गए यादृच्छिक संख्या जनरेटर के लिए उत्पन्न मूल्य के एक निश्चित अनुक्रम से मेल खाता है।

पायथन में क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडम नंबर जेनरेट करें

हम अजगर 3.x में क्रिप्टोग्राफिक रूप से सुरक्षित यादृच्छिक संख्या उत्पन्न कर सकते हैं। यदि हमारे पास अजगर 3.6 या इसके बाद के संस्करण हैं तो हम इसके लिए नए रहस्य मॉड्यूल और फ़ंक्शन रैंड का उपयोग कर सकते हैं। यह निर्दिष्ट मान के नीचे एक यादृच्छिक संख्या उत्पन्न करेगा।

इम्पोर्ट सीक्रेट्स#10 और 500 के बीच 10 सुरक्षित रैंडम नंबर जेनरेट करेंx रेंज में(0,10):secV =10+ secrets.randbelow(500)print(secV)

आउटपुट

464406184293399332495292118134

पायथन 3.5 या उससे नीचे के लिए एक और तरीका है, हम क्रिप्टोग्राफिक रूप से सुरक्षित यादृच्छिक संख्या उत्पन्न करने के लिए यादृच्छिक मॉड्यूल और सिस्टम रैंडम वर्ग का उपयोग कर सकते हैं,

यादृच्छिक आयात करें 

आउटपुट

374211425264217972103931952

दूसरा तरीका रैंडम और सीक्रेट्स (डेटा को सुरक्षित करने के लिए) मॉड्यूल का उपयोग करना है।

import secretsimport randomsecNum =random.SystemRandom().random()print("secure number is", secNum)print("Secure byte टोकन", secrets.token_bytes(16))

आउटपुट

सुरक्षित संख्या 0.5205307353786663 है सुरक्षित बाइट टोकन b'\x05T>\xacsqn0\x08\xc4\xf4\x8aU\x13\x9f\xcf'

  1. पायथन में वस्तुओं की सूची कैसे शफल करें?

    पायथन में एक रैंडम मॉड्यूल है जो रैंडमाइजेशन से संबंधित कार्य प्रदान करता है। फेरबदल () फ़ंक्शन किसी सूची में आइटम के क्रम को यादृच्छिक बनाता है। >>> import random >>> l1=['aa',22,'ff',15,90,5.55] >>> random.shuffle(l1) >>> l1 [22, 15, 90, 5.55, &#

  1. हम Python में random.seed() का उपयोग क्यों करते हैं?

    यादृच्छिक मॉड्यूल की बीज () विधि यादृच्छिक संख्या जनरेटर को प्रारंभ करती है। random.seed(a,b) यदि a छोड़ा गया है या कोई नहीं है, तो वर्तमान सिस्टम समय का उपयोग किया जाता है। यदि ऑपरेटिंग सिस्टम द्वारा यादृच्छिकता स्रोत प्रदान किए जाते हैं, तो उनका उपयोग सिस्टम समय के बजाय किया जाता है यदि a एक इंट

  1. रूबी में रैंडम नंबर जेनरेट करना

    रैंडम नंबर गेमिंग, एन्क्रिप्शन और बिल्डिंग सिमुलेशन जैसे विभिन्न उद्देश्यों के लिए उपयोगी होते हैं। तकनीकी रूप से, कंप्यूटर विशुद्ध रूप से गणना द्वारा यादृच्छिक संख्याएँ उत्पन्न नहीं कर सकते हैं। किसी भी नियतात्मक उपकरण पर वास्तव में यादृच्छिक संख्याएँ उत्पन्न करना मौलिक रूप से असंभव है। आप जिस सर्व