如何将带有时区的字符串转换为Unix时间戳Python?

jmf:

我有一个从数据库中获取的datetime字符串,我想将其转换为unix时间戳。

我不确定该怎么做。

db_timestamp = '2020-08-05 12:48:50+02:00'
f = '%Y-%m-%d %H:%M:%S%z'
timestamp = datetime.strptime(db_timestamp , f)
TypeError: strptime() argument 1 must be str, not datetime.datetime 

我尝试的另一种方法如下

python_timestamp = datetime.isoformat(db_timestamp)
test_timestamp = datetime.strptime(python_timestamp , f)

然后我得到以下错误

ValueError: time data '2020-08-05T12:48:50+02:00' does not match format '%Y-%m-%d %H:%M:%S%z'

如何解决这个错误?db_timestamp的正确字符串格式应该是什么?

MrFuppes:

假设您运行的是Python 3.7或更高版本,那么您想要的是fromisoformat分析字符串并timestamp()获取自UNIX纪元(POSIX)以来的秒数。

from datetime import datetime
db_timestamp = '2020-08-05 12:48:50+02:00'
# to datetime object:
dt = datetime.fromisoformat(db_timestamp)
# to UNIX time:
ts = dt.timestamp()
print(repr(dt), ts)
>>> datetime.datetime(2020, 8, 5, 12, 48, 50, tzinfo=datetime.timezone(datetime.timedelta(seconds=7200))) 1596624530.0

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将带时区的java.util.Date转换为带有时区的时间戳

将带有时区的python datetime转换为字符串

如何将时间戳转换为字符串(不更改时区)?

如何将未知时区的字符串datetime转换为python中的时间戳

Scala-将带有时区的ISO 8601格式的字符串转换为时间戳

将带有时区的值转换为时间戳

在Oracle中将本地日期时间(带有时区)转换为Unix时间戳

将带有时区的时间戳转换为星期几

将带有时区的日期时间字符串转换为C ++中的UNIX时间戳的快速方法

将带有时间戳的字符日期转换为类“ POSIXct”“ POSIXt”

将带有时间戳的Excel文件转换为python日期和时间

如何将多个日期格式的字符串转换为时区格式的时间戳

如何将带有时区的时间转换为时间戳?

如何在Oracle中将带有某些服务符号的字符串转换为带有时区的时间戳?

如何将带有函数的字符串转换为Python中的可执行代码?

如何将带时区的PostgreSQL时间戳转换为DateTime?

如何将带有字符代码的字符串转换为带引号的形式

将带有时间字符串的列表列表转换为秒,并找到它们之间的计数时间

如何将带有 T 的字符串转换为特定的时区?

如何将带有转义字符的 ascii 字符串转换为其等效的 unicode

如何将时间戳字符串转换为另一个时区的时间戳

如何将带有时区的奇怪日期时间字符串转换为时间戳(PySpark)

Pandas - 如何将带空格的字符串转换为时间戳?

如何将带有时间戳的excel文件名转换为日期时间格式

在 Presto 中将带有时区 (+0000) 的时间戳字符串转换为时间戳时出错

如何将 ORACLE 日期和时间戳类型转换为带时区的字符串?

如何将带有时间戳的字符列转换为用于 R 计算的有用格式

将带有时区的时间日期字符串转换为 utc python

如何在python中将带有时区的日期字符串转换为日期时间