Modül dersleri (3/4)
Sayılar ve matematik modülü
Python iki temel sayısal türü birbirinden ayırır: int (keyfi duyarlıklı)
tamsayılar — taşma yok) ve float (64 bit kayan nokta, çift
kesinlik).
type(42) # <class 'int'>
type(3.14) # <class 'float'>
type(10 ** 100) # <class 'int'> — interi grandi a piacereAritmetik operatörler
| Op | Anlamı | Örnek | Sonuç |
|---|---|---|---|
+ | ekleme | 2 + 3 | 5 |
- | çıkarma | 5 - 2 | 3 |
* | ürün | 4 * 3 | 12 |
/ | doğru bölme | 10 / 4 | 2.5 |
// | tamsayı bölme | 10 // 4 | 2 |
% | modulo (kalan) | 10 % 3 | 1 |
** | güç | 2 ** 10 | 1024 |
Uyarı: /, iki tamsayıyla bile her zaman bir float döndürür (10 / 2)
5 değil, 5.0 değerini döndürür). Tamsayı bölme için // kullanın.
10 / 4 # 2.5
10 // 4 # 2
-7 // 2 # -4 (arrotonda verso il basso, non verso lo zero)Sayısal yerleşikler
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 modülü
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Şamandıra tuzağı
Kayan noktalar ikili yaklaşımlardır: 0.1 + 0.2 tam olarak eşit değildir
0.3.
0.1 + 0.2 # 0.30000000000000004
0.1 + 0.2 == 0.3 # False !Güvenli karşılaştırmalar için math.isclose(a, b) kullanın veya mali bağlamlarda
decimal modülü.
Şamandıra hassasiyeti ve ondalık modül
Python'daki kayan noktalar, çift duyarlıklı kayan nokta sayıları (IEEE 754 standardı) olarak uygulanır. Sonuç olarak, 0.1 + 0.2 gibi hesaplamalar tam olarak 0.3 sonucunu vermez, bunun yerine 0.30000000000000004 sonucunu verir. Mutlak matematiksel kesinliğe ihtiyacınız varsa (örneğin finansal uygulamalar için), standart kütüphanenin decimal modülünü kullanın.
Deneyin
'Saniye = 3725' verildiğinde, // ve %'yi kullanarak 'saat', 'dakika', 'kalan_saniye'yi hesaplayın. `(saat, dakika, kalan_saniye)` demetini değerlendirin.
İpucu göster
// tamsayı bölmesini yapar, kalan %'dir.
3 denemeden sonra çözüm mevcut
Alıştırmayı gözden geçirin
'Yarıçap = 5' verildiğinde, math.pi'yi kullanarak 'alan'daki daire alanını hesaplayın. Yuvarlak ile 2 ondalık basamağa yuvarlanmış 'alanı' değerlendirin.
İpucu göster
math.pi * yarıçap ** 2
3 denemeden sonra çözüm mevcut
Ek zorluk
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.
İpucu göster
math.sqrt(16) 4,0 değerini döndürür. round(3.74) 4 değerini döndürür. Bunları toplayın ve total_val'a atayın.
3 denemeden sonra çözüm mevcut