小编mob*_*ion的帖子

使用pytz在Python中本地化Epoch时间

我正在努力将epoch时间戳转换为不同时区的日期与pytz.我想要做的是创建一个DateTime对象,它接受一个Olson数据库时区和一个纪元时间,并返回一个本地化的datetime对象.最后,我需要回答诸如"在纽约时间1350663248的几小时?"之类的问题.

这里有些东西不正常:

import datetime, pytz, time

class DateTime:
    def __init__(self, timezone, epoch):
        self.timezone = timezone
        self.epoch = epoch
        timezoneobject = pytz.timezone(timezone)
        datetimeobject = datetime.datetime.fromtimestamp( self.epoch )
        self.datetime = timezoneobject.localize(datetimeobject)

    def hour(self):
        return self.datetime.hour

if __name__=='__main__':
    epoch = time.time()
    dt = DateTime('America/Los_Angeles',epoch)
    print dt.datetime.hour
    dt = DateTime('America/New_York',epoch)
    print dt.datetime.hour
Run Code Online (Sandbox Code Playgroud)

这打印相同的小时,而一个应该提前3个小时.这里出了什么问题?我是一个完整的Python初学者,任何帮助表示赞赏!

python timezone datetime epoch pytz

15
推荐指数
3
解决办法
1万
查看次数

在Python中使用Olson Timezones

好,

时机已到,我正试图逃避拉里沃尔的噩梦,从Perl转向Python(工作).为此,我正在通过密集的自学来改造从半夜牛仔编码器,一个人的军队,非文件,我相信你知道像我这样的人(!),对一个和平的Pythonic学生的方式.我也想在这里搞笑,所以请耐心等待.:/

为此,我正在努力将我每​​天使用的常用代码和实用程序从Perl转换为Python.本周我将使用Perl编写的DateTime相关库加工成一个Python库,该库定义了一个暴露相同契约的类,特别是在Olson数据库的各个时区中创建DateTime对象.这是Perl中的示例.我很难理解Python中的等价物是如何完成的.请注意我在太平洋标准时间上午9:56写这个:

package MyDateTime;

use Moose;
use DateTime;

has day         => (is => 'ro', isa => 'Int');
has hour        => (is => 'ro', isa => 'Int');
has minute      => (is => 'ro', isa => 'Int');
has month       => (is => 'ro', isa => 'Int');
has second      => (is => 'ro', isa => 'Int');
has timezone    => (is => 'ro', isa => 'Str', required => 1);
has timestamp   => (is => 'ro', isa => 'Num', required => 1);
has year …
Run Code Online (Sandbox Code Playgroud)

python timezone datetime localization

2
推荐指数
1
解决办法
310
查看次数

标签 统计

datetime ×2

python ×2

timezone ×2

epoch ×1

localization ×1

pytz ×1