2015-01-16 101 views
0

我在view.py一段代碼,如果我使用效果from datetime import time:在地方,我在我的view.py另一個代碼,「進口時間」和「從日期時間進口時間」一起?

from datetime import time, ... 

times = [] 
for i in range(0, 24*4): 
    times.append((datetime.combine(date.today(), 
    time()) + timedelta(minutes=15) * i).time().strftime("%I:%M %p")) 

不幸的是,如果我有:

工作守則使用import time將am/pm時間轉換爲24h db友好格式,如果from datetime import time已到位,則該格式不起作用。

代碼:

import time 

mytime = time.strftime('%H:%M:%S', time.strptime(mytime, '%I:%M %p')) 

所以問題是:

  1. 沒有任何解決方法有兩個地方進口?
  2. 如果不是,我如何才能使第一個功能與import time一起使用?
  3. 使用import datetime有沒有其他方法可以將am/pm轉換爲24h格式?
+2

的'。時間('()的strftime(...) '是還原劑。只需在'datetime'對象上直接使用'strftime()'。 –

+0

我不確定爲什麼當'datetime.now()'會做'datetime.combine(date.today(),time())'' –

+0

'現在,quarter = datetime.now() ,timedelta(minutes = 15)',then'times = [(now + quarter * i).strftime('%I:%M%p')for i in range(24 * 4)]'you get you the same output 。 –

回答

3

import是一個變量賦值,並且在同一範圍內不能有兩個具有相同名稱的變量。

你什麼可以做只是使用datetime作爲一個模塊。

import datetime 
import time 

datetime.time() 

你也可以使用datetime.datetime.strptime代替time.strptime,並避免time模塊完全。

+0

感謝你的反饋。當我做出改變時,我得到'type object'datetime.datetime'沒有屬性'datetime''任何建議? – WayBehind

+0

'from datetime import datetime; datetime.strptime()'或'import datetim Ë; datetime.datetime.strptime()'。 –

+0

謝謝你的幫助! – WayBehind

2

您可以試試from datetime import time as dtime

+0

請注意,這可能有點混淆,因爲別名不尋常,讀者可能不會期望' dtime'指的是一個stdlib類型 – Eevee

+0

噢,你說的沒錯,我不會那樣做,這只是一個例子,你可以導入兩個同名模塊而不會產生衝突 – paidhima

+0

謝謝你的建議!我認爲這也是一個有效的選擇! – WayBehind

0

datetime.time類是用來比較少見相比time模塊,因此你可以使用它更長的名字:在'。時間)

import time 
from datetime import time as datetime_time