python - पायथन में एप्सिलॉन के लिए मूल्य




comparison floating-point (2)

आश्चर्यचकित किसी ने यहां इसका उल्लेख नहीं किया; मुझे लगता है कि कई लोग इसके बजाय numpy.finfo (प्रकार (चर)) .eps का उपयोग करेंगे। या .resolution अगर यह परिशुद्धता का आकलन करने के लिए है।

ध्यान दें कि finfo केवल फ़्लोटिंग पॉइंट प्रकारों के लिए है, और यह भी पायथन के अपने float प्रकार के साथ काम करता है (यानी नंबरी के प्रकारों तक सीमित नहीं)। पूर्णांक प्रकारों के लिए बराबर है iinfo , हालांकि इसमें सटीक जानकारी नहीं है (क्योंकि, ठीक है, यह क्यों होगा?)।

क्या पायथन में एप्सिलॉन प्राप्त करने के लिए (या विधि के लिए) एक मानक मूल्य है? मुझे फ्लोटिंग पॉइंट वैल्यू की तुलना करने की जरूरत है और सबसे छोटे संभव अंतर के खिलाफ तुलना करना चाहता हूं।

C ++ में एक फ़ंक्शन प्रदान किया गया है numeric_limits::epsilon( ) जो किसी भी दिए गए डेटा प्रकार के लिए एप्सिलॉन मान देता है। क्या पायथन में एक समकक्ष है?


जानकारी sys.float_info में उपलब्ध है, जो C99 में float.h से मेल खाती है।

>>> import sys
>>> sys.float_info.epsilon
2.220446049250313e-16




epsilon