मॉड्यूल पाठ (3/4)
संख्याएँ और गणित मॉड्यूल
पायथन दो मौलिक संख्यात्मक प्रकारों को अलग करता है: int (मनमाना-परिशुद्धता
पूर्णांक - कोई अतिप्रवाह नहीं) और float (64-बिट फ़्लोटिंग पॉइंट, डबल
परिशुद्धता)।
type(42) # <class 'int'>
type(3.14) # <class 'float'>
type(10 ** 100) # <class 'int'> — interi grandi a piacereअंकगणित संचालक
| ऑप | मतलब | उदाहरण | परिणाम |
|---|---|---|---|
+ | जोड़ | 2 + 3 | 5 |
- | घटाव | 5 - 2 | 3 |
* | उत्पाद | 4 * 3 | 12 |
/ | सच्चा विभाजन | 10 / 4 | 2.5 |
// | पूर्णांक विभाजन | 10 // 4 | 2 |
% | मॉड्यूलो (शेष) | 10 % 3 | 1 |
** | शक्ति | 2 ** 10 | 1024 |
चेतावनी: / हमेशा एक float लौटाता है, यहां तक कि दो पूर्णांक (10 / 2) के साथ भी
5.0 लौटाता है, 5 नहीं)। पूर्णांक विभाजन के लिए // का उपयोग करें।
10 / 4 # 2.5
10 // 4 # 2
-7 // 2 # -4 (arrotonda verso il basso, non verso lo zero)संख्यात्मक अंतर्निर्मित
abs(-5) # 5
min(3, 1, 2) # 1
max([3, 1, 2]) # 3 (su iterabile)
round(3.7) # 4
round(3.14159, 2) # 3.14
sum([1, 2, 3]) # 6math मॉड्यूल
import math
math.pi # 3.141592653589793
math.sqrt(16) # 4.0
math.floor(3.9) # 3 (verso meno infinito)
math.ceil(3.1) # 4 (verso più infinito)
math.log(math.e) # 1.0
math.gcd(12, 18) # 6फ्लोट ख़तरा
फ़्लोट्स बाइनरी सन्निकटन हैं: 0.1 + 0.2 बिल्कुल बराबर नहीं है
0.3.
0.1 + 0.2 # 0.30000000000000004
0.1 + 0.2 == 0.3 # False !सुरक्षित तुलना के लिए math.isclose(a, b) या, वित्तीय संदर्भ में, का उपयोग करें
decimal मॉड्यूल।
फ़्लोट परिशुद्धता और दशमलव मॉड्यूल
पायथन में फ़्लोट्स को डबल-प्रिसिजन फ़्लोटिंग-पॉइंट नंबर (IEEE 754 मानक) के रूप में कार्यान्वित किया जाता है। नतीजतन, 0.1 + 0.2 जैसी गणनाओं से बिल्कुल 0.3 नहीं मिलता, बल्कि 0.30000000000000004 मिलता है। यदि आपको पूर्ण गणितीय परिशुद्धता की आवश्यकता है (उदाहरण के लिए वित्तीय अनुप्रयोगों के लिए), तो मानक लाइब्रेरी के decimal मॉड्यूल का उपयोग करें।
इसे अजमाएं
`सेकंड = 3725` दिया गया है, // और % का उपयोग करके `घंटे`, `मिनट`, `शेष_सेकंड` की गणना करें। टुपल का मूल्यांकन करें `(घंटे, मिनट, शेष_सेकंड)`।
संकेत दिखाएँ
// पूर्णांक विभाजन करता है, शेष %।
3 प्रयासों के बाद समाधान उपलब्ध है
व्यायाम की समीक्षा करें
`त्रिज्या = 5` दिया गया है, गणित.पीआई का उपयोग करके `क्षेत्र` में वृत्त क्षेत्र की गणना करें। राउंड के साथ 2 दशमलव तक पूर्णांकित 'क्षेत्रफल' का मूल्यांकन करें।
संकेत दिखाएँ
गणित.पीआई * त्रिज्या ** 2
3 प्रयासों के बाद समाधान उपलब्ध है
अतिरिक्त चुनौती
Import the `math` module. Calculate the square root of `16` using `math.sqrt`, add the result to the rounded value of `3.74` (using `round()`), and store the final sum in `total_val`. Finally, evaluate the variable.
संकेत दिखाएँ
Math.sqrt(16) 4.0 लौटाता है। राउंड(3.74) रिटर्न 4. उनका योग करें और total_val पर असाइन करें।
3 प्रयासों के बाद समाधान उपलब्ध है