Nhận các phần nguyên và phần thập phân của một số cùng lúc với math.modf trong Python

Kinh doanh

Hàm modf () của toán học, mô-đun chuẩn cho các hàm toán học trong Python, có thể được sử dụng để lấy đồng thời phần nguyên và phần thập phân của một số.

Xem bài viết sau để biết divmod (), hàm này đồng thời nhận được thương và phần dư của một phép chia.

Nhận phần nguyên và phần thập phân mà không cần mô-đun toán học

Việc áp dụng int () cho kiểu float dấu phẩy động sẽ mang lại một giá trị nguyên với dấu phẩy thập phân bị cắt bớt. Điều này có thể được sử dụng để lấy phần nguyên và phần thập phân.

a = 1.5

i = int(a)
f = a - int(a)

print(i)
print(f)
# 1
# 0.5

print(type(i))
print(type(f))
# <class 'int'>
# <class 'float'>

Nhận các phần nguyên và phần thập phân của một số đồng thời với math.modf ()

Hàm modf () trong mô-đun toán học có thể được sử dụng để lấy đồng thời phần nguyên và phần thập phân của một số.

math.modf () trả về bộ giá trị sau Lưu ý thứ tự, vì phần thập phân đứng trước.

  • (decimal, integer)
import math

print(math.modf(1.5))
print(type(math.modf(1.5)))
# (0.5, 1.0)
# <class 'tuple'>

Mỗi phần có thể được giải nén và gán cho một biến riêng biệt như sau Cả phần nguyên và phần thập phân đều là kiểu float.

f, i = math.modf(1.5)

print(i)
print(f)
# 1.0
# 0.5

print(type(i))
print(type(f))
# <class 'float'>
# <class 'float'>

Dấu sẽ giống như dấu của giá trị ban đầu cho cả phần nguyên và phần thập phân.

f, i = math.modf(-1.5)

print(i)
print(f)
# -1.0
# -0.5

Áp dụng cho các kiểu int. Trong trường hợp này, cả phần nguyên và phần thập phân đều là kiểu float.

f, i = math.modf(100)

print(i)
print(f)
# 100.0
# 0.0

Phương pháp sau có thể được sử dụng để kiểm tra xem kiểu float có phải là số nguyên (tức là phần thập phân là 0) mà không lấy phần thập phân hay không. Xem bài viết sau.

  • float.is_integer()
Copied title and URL