Функција модф() математике, стандардни модул за математичке функције у Питхон-у, може се користити за истовремено добијање целобројних и децималних делова броја.
Погледајте следећи чланак за дивмод(), који истовремено добија количник и остатак дељења.
Добијте целобројне и децималне делове без математичког модула
Примена инт() на тип флоат са помичним зарезом даје целобројну вредност са скраћеним децималним зарезом. Ово се може користити за добијање целог и децималног дела.
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'>
Узмите целобројне и децималне делове броја истовремено са матх.модф()
Функција модф() у математичком модулу може се користити за истовремено добијање целобројних и децималних делова броја.
матх.модф() враћа следећу точку. Обратите пажњу на редослед, пошто је децимални део први.
(decimal, integer)
import math
print(math.modf(1.5))
print(type(math.modf(1.5)))
# (0.5, 1.0)
# <class 'tuple'>
Сваки се може распаковати и доделити засебној променљивој на следећи начин. И целобројни и децимални делови су типови са плутајућим бројем.
f, i = math.modf(1.5)
print(i)
print(f)
# 1.0
# 0.5
print(type(i))
print(type(f))
# <class 'float'>
# <class 'float'>
Знак ће бити исти као предзнак оригиналне вредности и за целобројне и за децималне делове.
f, i = math.modf(-1.5)
print(i)
print(f)
# -1.0
# -0.5
Применљиво на типове инт. У овом случају, и целобројни и децимални делови су типови са пловком.
f, i = math.modf(100)
print(i)
print(f)
# 100.0
# 0.0
Следећи метод се може користити да се провери да ли је тип флоат цео број (тј. децимални део је 0) без добијања децималног дела. Погледајте следећи чланак.
float.is_integer()