2011-03-16 104 views
2

我已經寫了一個代碼將日期和時間轉換爲時區,現在的問題是我已經厭倦了在python控制檯和http函數中運行代碼,但儘管存在相同的代碼,我是在python控制檯獲取時間戳不同的時間戳爲一個相同的代碼

的不同輸出

from datetime import datetime 
import time 
qdate="08-03-2011 05:00:00" 
ttimetuple=time.strptime(qdate,"%d-%m-%Y %H:%M:%S") 
print time.mktime(ttimetuple) 

輸出是1299578400.0

在web服務或HTTP功能

def SaveDate(request,qdate): 
     qdate="08-03-2011 05:00:00" # i hard coded for a timing to verify the timestamp 
     ttimetuple=time.strptime(qdate,"%d-%m-%Y %H:%M:%S") 
     data=time.mktime(ttimetuple) 
     return HttpResponse(data,mimetype='application/javascript') 

輸出爲1299582000.0

回答

3

我想這是因爲您的控制檯和Web服務器是在不同的時區設置運行。

嘗試

import time 
print time.timezone 

檢查控制檯是否時區和服務器是不同的。

+0

我遠程登錄到只在服務器端的python控制檯..所以一切都只在服務器端。 你建議的代碼輸出是18000 – Hunt 2011-03-16 07:06:03

+0

@Hunt:18000是你在UTC後面的秒數,所以從格林威治到西方5個小時。 – eumiro 2011-03-16 07:13:14

+0

嗯,你是對的,問題與時區有關,因爲我用http方法打印時區並返回21600. – Hunt 2011-03-16 07:21:30

相關問題