Computer >> Máy Tính >  >> Lập trình >> Python

Hàm thập phân trong Python là gì?

Đối với python số học dấu phẩy động thập phân cung cấp mô-đun thập phân. Bản thân mô-đun này có hàng trăm chức năng giúp xử lý hiệu quả các phép tính thập phân. Chúng ta sẽ xem xét những cái quan trọng và được sử dụng rộng rãi nhất về chủ đề này.

so sánh ()

Hàm này so sánh các số thập phân. Trả về 1 nếu đối số Thập phân thứ nhất lớn hơn thứ 2, -1 nếu đối số Thập phân thứ nhất nhỏ hơn thứ 2 và 0 nếu cả hai đều bằng nhau.

Ví dụ

import decimal

val1 = decimal.Decimal(2.6)
val2 = decimal.Decimal(2.61)

# compare decimals
print("The result is : ",val1.compare(val2))

# resetting the values
val1 = decimal.Decimal(2.6)
val2 = decimal.Decimal(-2.6)

# compare decimals
print("The result is : ",val1.compare(val2))

# resetting the values
val1 = decimal.Decimal(2.6)
val2 = decimal.Decimal(2.6)

# compare decimals
print("The result is : ",val1.compare(val2))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

The result is : -1
The result is : 1
The result is : 0

max () và min ()

Họ tìm số lớn nhất và nhỏ nhất của hai số thập phân tương ứng.

Ví dụ

import decimal

val1 = decimal.Decimal(2.6)
val2 = decimal.Decimal(2.61)

# compare decimals
print("The max value is : ",round(val1.max(val2),2))
print("The min value is : ",round(val1.min(val2),2))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

The max value is : 2.61
The min value is : 2.60

getcontext ()

Chúng ta có thể thay đổi độ chính xác của các phép tính số học bằng cách sử dụng phương pháp này. Độ chính xác mặc định là 28. Trong ví dụ dưới đây, chúng tôi thực hiện một phép toán số học hiển thị kết quả theo độ chính xác được đặt bởi getcontext (). Prep.

Ví dụ

from decimal import *
print(Decimal(13) / Decimal(7))

getcontext().prec = 6
print(Decimal(13) / Decimal(7))

getcontext().prec = 10
print(Decimal(13) / Decimal(7))

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

1.857142857142857142857142857
1.85714
1.857142857

exp ()

Trả về giá trị của hàm mũ (tự nhiên) e ** x tại một số đã cho.

Ví dụ

from decimal import *

#Finding e
print(Decimal(1).exp())

#Finding e raised to 2
print(Decimal(2).exp())

#Finding e raised to 4
print(Decimal(4).exp())

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

2.718281828459045235360287471
7.389056098930650227230427461
54.59815003314423907811026120

as_integer_ratio ()

Đôi khi chúng ta cần các số nguyên mà phép chia cho chúng ta số thập phân mà chúng ta đang xử lý. Chúng tôi có thể có được điều này bằng cách sử dụng as_integer_ratio ().

Ví dụ

from decimal import *

v = Decimal('2.1834').as_integer_ratio()
print(v)

v = Decimal('-1.92').as_integer_ratio()
print(v)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

(10917, 5000)
(-48, 25)

ln () và log10 ()

Chúng ta có thể tính logarit tự nhiên (với cơ số là e) cũng như logarit cơ số 10 bằng cách sử dụng các hàm này. Chúng tôi cung cấp giá trị thập phân có logarit được yêu cầu.

Ví dụ

from decimal import *

ln_val = Decimal('2.1').ln()
print(ln_val)

log_val = Decimal('2.1').log10()
print(log_val)

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

0.7419373447293773124826065257
0.3222192947339192680072441618

fma (a, b)

Đây là một chức năng đặc biệt được gọi là hợp nhất nhân và cộng. Số thập phân đã cung cấp sẽ được nhân với đối số đầu tiên a và sau đó kết quả được thêm vào đối số thứ hai b.

Ví dụ

from decimal import *

# Same as (2.1*2)+5
fma_val = Decimal(2.1).fma(2,5)
print(fma_val)

# Same as (8.1*3)+5
fma_val = Decimal(8.1).fma(3,5)

print(fma_val)
re class="prettyprint notranslate" >

Đầu ra

Chạy đoạn mã trên cho chúng ta kết quả sau -

9.200000000000000177635683940
29.29999999999999893418589636