2017-01-30 50 views
0

我有一個值爲unicode。它的數字是「4」。我需要將它與datetime.timedelta的值"42 days, 9:46:21"進行比較。如何將它們以相同的格式進行轉換,以進行比較還是減法?如何比較unicode和datetime.timedelta值?

在下面的代碼中,TimeDiffRestoCurrent是一個datetime.timedelta,SLA_Time是一個unicode字符串。

if TimeDiffRestoCurrent < SLA_Time: 
    print() 

錯誤,我發現是:

if TimeDiffRestoCurrent < SLA_Time: 
TypeError: can't compare datetime.timedelta to unicode 

回答

0

假設s握着你的價值在秒unicode的,td握着你的timedelta值。

首先,轉換s浮動:

t1 = float(s) # assuming it can be parsed to float 

然後,轉換TD做浮動以及以下內容:

t2 = td.total_seconds() 

現在,您可以比較他們,因爲他們都在秒。如果s在幾分鐘,幾小時或幾天內,請進行適當的乘法運算。