2011-03-29 23 views
18

मुझे सबसे अधिक पता है, अगर सभी प्रोग्रामिंग भाषाएं, पूर्णांक, फ्लोट इत्यादि नहीं हैं तो उनके पास अधिकतम राशि हो सकती है, या तो हस्ताक्षरित या हस्ताक्षरित। जैसे पास्कल का int प्रकार केवल 32768 ~ तक हो सकता है।पायथन संख्या सीमा

जो मैं जानना चाहता था, पाइथन के int और फ़्लोटिंग पॉइंट चर पर सीमा क्या है। मैंने बहुत बड़ी संख्याओं का उत्पादन करने के लिए एक छोटे से कार्यक्रम की कोशिश की, लेकिन मुझे कोई गलती नहीं हुई। क्या यह भी सीमा है कि ये चर कितने बड़े हो सकते हैं?

मैं दस्तावेज में देखा और मैं के लिए क्या देख रहा था नहीं पा सके:/

मदद बहुत सराहना की जाएगी, धन्यवाद!

+0

आपको आईईईई फ्लोटिंग-पॉइंट जानकारी नहीं मिली? http://docs.python.org/tutorial/floatingpoint.html यह बहुत स्पष्ट लगता है। –

उत्तर

44

पहले संस्करणों की int पर एक सीमा थी लेकिन अब इसे हटा दिया गया है, ताकि आप कह सकें कि कोई सीमा नहीं है, यह आपके कंप्यूटर की स्मृति पर निर्भर करता है। this article देखें।

+8

एक टीएल; डॉ संस्करण: छोटे पायथन पूर्णांक संख्या प्लेटफ़ॉर्म के मशीन शब्द (उदा। 32 बिट) में फिट होती है। यदि कोई संख्या फिट नहीं होती है, तो इसे स्वचालित रूप से 'लंबे' पूर्णांक में प्रचारित किया जाता है, जब तक आपकी रैम अनुमति देता है। आप वास्तव में एक पूर्णांक अतिप्रवाह नहीं हो सकता है। यदि आप बिट्स की सटीक संख्या को पैक करना चाहते हैं (उदा। सी कोड में इंटरफ़ेस के लिए), तो आप 'संरचना आयात करें, ctypes' आयात करें। अच्छी खबर के लिए – 9000

+0

प्लस वन: डी –

-1

यह document अच्छा प्रारंभिक बिंदु देता है, जैसे sys.float_info

import sys 
dir(sys) 
print sys.maxint 
help(sys.float_info) 

और इतने पर:

5

"int" के लिए पायथन के पुराने संस्करणों में एक सीमा थी। लेकिन, यह गिरा दिया गया है क्योंकि पाइथन एक वस्तु के रूप में "पूर्णांक" का इलाज करता है। इसलिए, यद्यपि पायथन मूल्य वस्तु ऑब्जेक्ट संदर्भ के लिए 32 बिट आवंटित करता है, क्योंकि मान 2^32 से अधिक हो जाता है, यह आपके कंप्यूटर पर रैम के आकार तक सभी तरह से आगे बढ़ सकता है।

संबंधित मुद्दे