मैं यादृच्छिक decimal.Decimal
उदाहरण कैसे प्राप्त करूं? ऐसा प्रतीत होता है कि यादृच्छिक मॉड्यूल केवल फ्लोट लौटाता है जो दशमलव के रूप में परिवर्तित करने के लिए एक पिटा होता है।पायथन में यादृच्छिक दशमलव
उत्तर
"एक यादृच्छिक दशमलव" क्या है? दशमलव के मनमाने ढंग से परिशुद्धता होती है, इसलिए एक संख्या को उतना ही यादृच्छिकता के साथ उत्पन्न करना जितना आप एक दशमलव में रख सकते हैं, आपकी मशीन की पूरी याददाश्त को स्टोर करने के लिए ले जाएगा।
आपको यह जानना होगा कि आप अपने यादृच्छिक संख्या में कितने सटीक परिशुद्धता चाहते हैं, जिस बिंदु पर बस एक यादृच्छिक पूर्णांक पकड़ना और इसे विभाजित करना आसान है। उदाहरण के लिए आप अंक ऊपर दो अंक और अंश में दो अंक चाहते हैं (randrange here देखें):
decimal.Decimal(random.randrange(10000))/100
:
एक नाव से एक दशमलव बनाने के लिए पहले यह एक स्ट्रिंग के लिए कनवर्ट करें। यह रूपांतरण के विवरण (प्रतिनिधित्व त्रुटि सहित) के एक स्पष्ट अनुस्मारक के रूप में कार्य करता है।
>>> import random, decimal
>>> decimal.Decimal(str(random.random()))
Decimal('0.467474014342')
क्या इसका मतलब है? यह मेरे लिए एक पिटा की तरह प्रतीत नहीं होता है। आप इसे जो भी सीमा और परिशुद्धता चाहते हैं उसे स्केल कर सकते हैं।
क्या आप जानते हैं कि कितने अंक आप के बाद और अल्पविराम से पहले चाहते हैं, आप उपयोग कर सकते हैं:
>>> import decimal
>>> import random
>>> def gen_random_decimal(i,d):
... return decimal.Decimal('%d.%d' % (random.randint(0,i),random.randint(0,d)))
...
>>> gen_random_decimal(9999,999999) #4 digits before, 6 after
Decimal('4262.786648')
>>> gen_random_decimal(9999,999999)
Decimal('8623.79391')
>>> gen_random_decimal(9999,999999)
Decimal('7706.492775')
>>> gen_random_decimal(99999999999,999999999999) #11 digits before, 12 after
Decimal('35018421976.794013996282')
>>>
यदि यह यहां मायने रखता है: इस तरह का नंबर का आंशिक हिस्सा समान रूप से यादृच्छिक नहीं होगा, अग्रणी शून्यों को हटाने के कारण। आप इसमें से '2.0something' नहीं प्राप्त कर सकते हैं। – bobince
मैंने इसे भी माना, लेकिन यह (99, 99 99 99) के बजाय तर्कों के रूप में (4, 6) लेने के लिए बेहतर होगा और फिर फ़ंक्शन बॉडी में केवल 10 ** 4 - 1, 10 ** 6 - 1 का उपयोग करें। – Kiv
मैं दोनों टिप्पणियों से सहमत हूं :-) –
यादृच्छिक मॉड्यूल से अधिक "केवल लौटने तैरता" के लिए प्रस्ताव दिया है, लेकिन वैसे भी:
from random import random
from decimal import Decimal
randdecimal = lambda: Decimal("%f" % random.random())
या क्या मुझे आपके प्रश्न में कुछ याद आया?
decimal.Decimal(random.random() * MAX_VAL).quantize(decimal.Decimal('.01'))
फिर भी यादृच्छिक दशमलव बनाने का एक और तरीका।
import random
round(random.randint(1, 1000) * random.random(), 2)
इस उदाहरण पर,
- random.randint() निर्दिष्ट श्रेणी (सम्मिलित) में यादृच्छिक पूर्णांक जेनरेट,
- random.random() चल में बिंदु संख्या यादृच्छिक उत्पन्न करता है रेंज (0.0, 1.0)
- अंत में, राउंड() फ़ंक्शन उपरोक्त के गुणात्मक परिणाम के दौर में होगा दशमलव बिंदु के बाद निर्दिष्ट मान पर (254.71921934351644 की तरह कुछ लंबा) (हमारे मामले में हमें 254.71 मिलेंगे)
ओपी एक 'दशमलव। डेसीमल' उदाहरण चाहता है। आपका कोड 'फ्लोट' बनाता है। –
- 1. पायथन दशमलव में अंश
- 2. पायथन में हेक्स से दशमलव
- 3. पायथन दशमलव सटीक
- 4. पायथन में 2 संख्या के बीच दिए गए दशमलव बिंदु की यादृच्छिक संख्या कैसे उत्पन्न करें?
- 5. पायथन यादृच्छिक फ़ंक्शन
- 6. (छद्म) की यादृच्छिक बाधा मान (यू) Int64 और दशमलव
- 7. पायथन: दशमलव रूपांतरण करने के लिए द्विआधारी
- 8. पायथन: केवल 1 दशमलव स्थान प्राप्त करना
- 9. Android में दशमलव बिंदु या दशमलव अल्पविराम
- 10. फ़ाइल में यादृच्छिक रेखा
- 11. पायथन में दशमलव के सेइल() हो रही है?
- 12. दशमलव पर दशमलव कास्ट करें? (नल दशमलव)
- 13. पायथन यूडीपी सॉकेट अर्ध-यादृच्छिक रूप से
- 14. पायथन एकजुट परीक्षण MongoDB यादृच्छिक रूप से
- 15. पायथन 2.5 में यादृच्छिक काम नहीं कर रहा है?
- 16. मैं पायथन में यादृच्छिक संख्या कैसे उत्पन्न कर सकता हूं?
- 17. पायथन में "बड़ा" यादृच्छिक संख्या कैसे उत्पन्न करें?
- 18. पायथन 2.6 में यादृच्छिक तार (क्या यह ठीक है?)
- 19. मैं पायथन में किसी सरणी से यादृच्छिक तत्व कैसे चुनूं?
- 20. जावास्क्रिप्ट में यादृच्छिक वाक्य पीढ़ी
- 21. दशमलव
- 22. दशमलव
- 23. दशमलव प्रकार को दशमलव प्रकार
- 24. समय में दशमलव घंटा?
- 25. दशमलव परिशुद्धता
- 26. पाइथन दशमलव/फ्लोट
- 27. यादृच्छिक जेपीजी
- 28. 'यादृच्छिक'
- 29. पायथन: असीसी चरित्र <-> दशमलव प्रतिनिधित्व रूपांतरण
- 30. पायथन दशमलव से संख्यात्मक मूल्य निकाला जा रहा है
में उम्मीद कर सकते हैं, तो आप सुझाव दे रहे हैं कि तथ्य यह है कि एक सीमित लंबाई है मतलब है कि परिणाम यादृच्छिक नहीं हैं? – monokrome