2010-09-11 143 views
1

我需要解析來自用戶輸入的日期/時間字符串,並將其轉換爲基於字符串所不具備相應的時區信息爲datetime.strptime() UTC(有什麼建議?)。有沒有一個簡單的方法來做到這一點?用戶指定的日期時間

理想的情況下,在谷歌應用程序引擎,我想如果可能的話還tzinfo從瀏覽器搶本地時間。

timezone_string = "GMT-0800" 
fields = ("eventstartmonth","eventstartday", "eventstartyear", "eventstarttimehour", "eventstarttimeampm") 
date_string = '_'.join(map(lambda x: self.request.get(x), fields)) 
# date_string = "01_11_2000_1:35_PM" 

dt = datetime.datetime.strptime(date_string, "%m_%d_%Y_%I:%M_%p") 
# how to convert dt into a tz-aware datetime, and then to UTC 
+0

[On GAE,我如何根據正確的客戶端TimeZone顯示日期?](http://stackoverflow.com/questions/868708/on-gae-how-may-i-showa-a-日期根據到右客戶時區) – msw 2010-09-11 22:21:17

+0

接近,這有一些相關的信息(謝謝),但不完全。我可以用tzinfo策略多用一點'手持' – Kyle 2010-09-11 22:30:04

+1

讓我感到困惑的是,python沒有一個可靠的實現來處理時區 – Kyle 2010-09-12 00:48:37

回答

0

在尋找類似信息,我碰到一個demo app engine app來(與包括源)演示如何時區轉換的方式,這類似於你所要求的東西。但不幸的是,你需要對你會被轉換每個時區創建自定義tzinfo類(在上面鏈接的演示應用程序的解釋/代碼)。

如果你需要能夠處理任何時區和/或想要採取簡單的路線,我建議使用pytz模塊。但是,請記住,pytz是,你必須上傳到您的GAE實例相當龐大模塊。

相關問題