python - 将 tzinfo 插入日期时间

标签 python datetime timezone tzinfo

我有以下 tzinfo 具体子类定义:

from datetime import datetime, timedelta, tzinfo

class ManilaTime(tzinfo):
  def utcoffset(self, dt):
    return timedelta(hours=8)

  def tzname(self, dt):
    return "Manila"

我获得了一个日期字符串,并想将其转换为可识别时区的 datetime 对象。我更喜欢使用以下方法:

def transform_date(date_string, tzinfo):
  fmt = '%Y-%m-%d'
  # Where do I insert tzinfo?
  date = datetime.strptime(date_string, fmt)
  return date

有什么方法可以按以下方式将 tzinfo 插入到 datetime 对象中?

manila = ManilaTime()
date = transform_date('2001-01-01', manila)

最佳答案

def transform_date(date_string, tzinfo):
    fmt = '%Y-%m-%d'
    date = datetime.strptime(date_string, fmt).replace(tzinfo=tzinfo)
    return date

关于python - 将 tzinfo 插入日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6818377/

相关文章:

python请求post返回纯文本

java - 有没有办法从 Joda Time DateTime 获取 DateTimeZone?

Xcode Organizer设备状态 "TakingInstallLock"并挂起,只有治愈才能完全恢复iOS

python - 我可以使用什么在 Python 的终端中返回一个换行符?

python - 安卓发布者 : "Track names in request path and request body must match."

python - 元类可以调用吗?

Javascript equlivent 到 .Net TimeZoneInfo.ConvertTimeBySystemTimeZoneId

python - pd.to_datetime 返回一个对象,而不是时间序列

objective-c - 解析 BST 时区

c# - 解析包含时区信息的字符串 DateTime