加入收藏 | 设为首页 | 会员中心 | 我要投稿 通辽站长网 (https://www.0475zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

将unix时间戳列表转换为python中其他时区的日期和时间字符串列表

发布时间:2022-10-20 14:02:15 所属栏目:Unix 来源:网络
导读: 将unix时间戳列表转换为python中其他时区的日期和时间字符串列表
pythonunixtime
将unix时间戳列表转换为python中其他时区的日期和时间字符串列表,python,unix,time,posix,Python,Unix,Tim

将unix时间戳列表转换为python中其他时区的日期和时间字符串列表

pythonunixtime

将unix时间戳列表转换为python中其他时区的日期和时间字符串列表,python,unix,time,posix,Python,Unix,Time,Posix,考虑posix时间戳的列表posix_times = [1490750889, 1490751209, 1490751569]我想将数组中的每个元素转换为包含美国/太平洋时区的本地日期和时间的文本字符串: ["3/28/2017 18:28:09", "3/28/2017 18:33:29", "3/28/2017 18:39:29"]最简单的方法是什么,它需要最少的包导入中解决了一个相关问题unix时间戳包,例如提供了以下形式的解决方案:posix_time = 1490750889date

考虑posix时间戳的列表

posix_times = [1490750889, 1490751209, 1490751569]

我想将数组中的每个元素转换为包含美国/太平洋时区的本地日期和时间的文本字符串:

 ["3/28/2017 18:28:09", "3/28/2017 18:33:29", "3/28/2017 18:39:29"]

最简单的方法是什么,它需要最少的包导入

中解决了一个相关问题,例如提供了以下形式的解决方案:

posix_time = 1490750889
datetime.datetime.utcfromtimestamp(posix_time).strftime('%Y-%m-%dT%H:%M:%SZ')

它不提供将这个时间转换为另一个时区的显式功能。而且,这种方法似乎不适用于列表,需要对循环/列表进行理解。

您可以将UNIX时间戳转换为

datetime

对象,然后使用其

strftime

方法对其进行格式化。但是,这会给您一个时区不知道日期时间。为了使其具有时区意识,您需要从

pytz

获取时区,并使用

localize

方法:

from datetime import datetime
from pytz import timezone
# ...
def format_time(time, tz):
  localized = tz.localize(datetime.fromtimestamp(time))
  return localized.strftime('%d/%m/%Y %H:%M:%S')
us_pacific = timezone('US/Pacific')
dates = map(lambda t: format_time(t, us_pacific), posix_times)

您可以使用标准的

datetime

库执行此操作:

In [1]: import datetime
In [2]: posix_times = [1490750889, 1490751209, 1490751569]
In [3]: [datetime.datetime.fromtimestamp(x).strftime("%x %X") for x in posix_times]
Out[3]: ['03/28/17 20:28:09', '03/28/17 20:33:29', '03/28/17 20:39:29']

如修正问题中所述,我不认为这是一个完全相同的问题,因为我看不到您提到的解决方案集合在哪里明确显示了如何处理任意时区。我感到困惑。如何知道将时间转移到美国/太平洋?这是因为那是我的本地时区吗?@rhz是的,它使用你的本地时区。你认为你的解决方案有一个简单的修改来指定一个任意的时区,还是像Pedro Castilho的解决方案那样需要额外的包,比如pytz?@rhz pytz是最简单的方法。

(编辑:通辽站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!