3
我正在研究高級計時和時間統計應用程序。我使用Python timedelta
對象來表示應用程序中的時間跨度。Python中timedelta對象的百分比?
我想弄明白的是,如果有一種方法來表示timedelta對象的任意分數。
timedelta提供的運算符只允許使用整數。你可以用一個整數乘以一個timedelta,你可以用一個整數來劃分它,但是你不能用float來做。
我希望能夠做兩件事情:
1:給定一個timedelta對象,找出它的一個任意的比例。換言之,能夠將乘或除由浮子:
from datetime import timedelta
import math
td = timedelta(1)
newTd = td * 0.01 # 1% of the time delta specified in td
newTd = td * 1.04 # 104% of the time delta given in td
newTd = td * math.pi # the timedelta multiplied by pi (lol)
2:給定兩個timedelta對象,計算出由一個timedelta給出關於另一個時間增量爲float時間跨度的百分比:
from datetime import timedelta
td1 = timedelta(1)
td2 = timedelta(2)
td1/td2 # should give me 0.5
td2 = timedelta(days=4, minutes=50)
td1/td2 # not sure what this would result in, but, the percentage of time 1 day fills out of 4 days and 50 minutes of time
這兩個都需要我能夠使用浮動操作timedelta對象。我不確定這是否可以完成。那麼,能否做到,如果沒有,是否有更好的選擇呢?
在python3中,您可以直接使用浮點數對timedelta對象進行操作,也可以對兩個timedelta對象進行操作來獲得浮點數。 – Zac