[英]Procedure for explicit type conversion in python from a float to int
我正在編寫一個程序,該程序可以讓我以天為單位計算一個人的年齡-包括accounting日在內的每一天,以及以月為單位的不規則天數。 這是一行代碼:
number_of_days = (((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1)
我將365.25
除以12
得到了值30.4375
。
現在,我只需要將整數部分存儲在number_of_days
。 我怎么做?
非常感謝您的幫助!
PS所有變量值均為整數值
您可以使用int
:
number_of_days = int((((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1))
或math.floor
:
import math
number_of_days = math.floor((((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1))
但是number_of_days
將是float
,因此我認為第一個解決方案更好。
只需調用int
:
number_of_days = int((((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1))
您可以使用下限功能嗎?
number_of_days = math.floor((((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1))
考慮使用倒圓角而不是更精確的轉換:
import math
int(math.round((((year2 - year1) * 12) + (month2 - month1)) * 30.4375 + (day2 - day1)))
如果您的目標是計算日期之間的天數,則可以使用datetime模塊:
import datetime
birth = datetime.date(1967,11,14)
today = datetime.date.today()
number_of_days = (today - birth).days
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.