PySide6.QtCore.QTimeZone

class QTimeZone

QTimeZone 标识时间表示如何与UTC相关联。更多_

概要

方法

静态函数

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

当日期和时间结合时,结果的含义取决于时间的表示方式。有多种国际标准用于表示时间;其中之一是UTC,对应于格林威治平均太阳时的传统标准(也称为GMT)。Qt支持的所有其他时间系统最终都是相对于UTC来指定的。此类的实例提供了一个无状态的计算器,用于在UTC和其他时间表示之间进行转换。

一些时间表示法简单地定义为与UTC的固定偏移量。其他则由政府定义,用于其管辖范围内。后者通常被称为时区,但QTimeZone(自Qt 6.5起)将它们的表示与一般时间系统的表示统一起来。大多数操作系统通常支持的一个时区被指定为本地时间;这被假定为用户所在的时区。

对于本地时间、UTC和与UTC固定偏移的时区以外的时区,Qt只能在操作系统提供某种方式访问该信息时提供支持。当Qt构建时,timezone功能控制此类信息是否可用。当不可用时,QTimeZone的一些构造函数和方法将从其API中排除;这些被记录为依赖于timezone功能。请注意,即使Qt构建时启用了此功能,对于系统配置错误或未安装某些标准包(例如,Linux上的tzdata包)的用户,此功能可能不可用。当时区信息可用时,默认情况下会启用此功能。

这个类主要是为在QDateTime中使用而设计的;大多数应用程序不需要直接访问这个类,而应该在构造QDateTime时使用它的实例。

注意

为了与QDateTime保持一致,QTimeZone不考虑闰秒。

备注

QTimeZone,与QDateTime一样,以秒为单位测量与UTC的偏移量。这与它们通常以毫秒为单位测量时间的方式形成对比。现实世界中的时区通常具有UTC偏移量,这些偏移量是五分钟(300秒)的整数倍,至少在1970年之前就已经如此。与UTC的正偏移量表示在任何给定日期的中午在UTC中午之前;负偏移量表示在同一日期的中午在UTC中午之后。

轻量级时间表示

QTimeZone 可以表示UTC、本地时间以及与UTC的固定偏移量,即使在功能 timezone 被禁用时也是如此。当该功能启用时,它也可以以这种形式使用;这是一种更轻量级的形式,使用它进行处理通常会更加高效,除非使用了仅在功能 timezone 启用时可用的方法。有关如何构建这些表示形式,请参见 InitializationfromSecondsAheadOfUtc(int)

本文档区分了“时区”,用于描述由系统提供或标准信息描述的时间表示,以及更一般的时间表示,包括这些轻量级形式。只有在启用timezone功能时,这些方法才可用,对于时区来说,这些方法可能比轻量级时间表示更便宜,对于这些方法,可能会构造一个合适的临时时区对象来转发查询。

IANA 时区标识符

QTimeZone 使用 IANA 时区数据库中定义的 IANA 时区 ID(http://www.iana.org/time-zones)。这是为了确保在所有支持的平台上使用标准的 ID。大多数平台原生支持 IANA ID 和 IANA 数据库,但对于 Windows,需要将其映射到本机 ID。更多详情请参见下文。

IANA ID 可以并且确实会定期更改,并且可能会根据主机系统数据更新的时间而有所不同。因此,你不能依赖任何给定 ID 在任何主机系统上的存在。你必须使用 availableTimeZoneIds() 来确定可用的 IANA ID。

IANA ID 和数据库也被称为 Olson ID 和数据库,以数据库的原始编译者命名。

UTC偏移时区

提供了一个默认的UTC时区后端,当启用timezone功能时,它总是可用的。这提供了一组通用的从UTC偏移的时区,范围从UTC-16:00到UTC+16:00。这些时区可以使用标准的ISO格式名称创建,例如“UTC+00:00”,如availableTimeZoneIds()所列出的,或者使用类似形式的名称与偏移秒数结合。

Windows 时区

与标准的IANA TZ数据库相比,Windows本地时区支持严重受限。Windows时区覆盖更大的地理区域,因此在转换时准确性较低。它们也不支持那么多的历史数据,因此可能仅对当前年份准确。特别是,当微软的时区数据声称在1900年之前观察到夏令时(这在历史上已知是不真实的)时,该声明将被忽略,并且1900年(据称)生效的标准时间将被视为一直有效。

QTimeZone 使用从Unicode CLDR数据派生的转换表来在IANA ID和Windows ID之间进行映射。根据您的Windows和Qt版本,此表可能无法提供有效的转换,在这种情况下将返回“UTC”。

QTimeZone 提供了一个公共API来使用这个转换表。使用的Windows ID是时区的Windows注册表键,也是MS Exchange EWS ID,但与2007年之前版本中MS Exchange使用的时区名称(TZID)和COD代码不同。

注意

当Qt与ICU库一起构建时,它优先使用ICU库而不是Windows系统API,从而避免了使用不同名称的API带来的所有问题。

系统时区

方法 systemTimeZoneId() 返回当前系统的IANA时区ID,在类Unix系统上,这将始终是正确的。在Windows上,此ID是从Windows系统ID使用内部转换表和用户选择的国家/地区翻译而来的。因此,任何Windows安装都有可能存在Qt未知的ID,在这种情况下,将返回“UTC”。

使用系统时区ID创建新的QTimeZone实例只会生成时区的固定命名副本,如果系统时区更改,它不会更改。systemTimeZone()将返回一个表示由该系统ID命名的时区的实例。请注意,使用此系统时区构造QDateTime可能与使用LocalTime作为其TimeSpec构造的QDateTime行为不同,因为后者直接使用系统API访问本地时间信息,这可能会有所不同(特别是,如果用户调整系统时区设置,可能会适应)。

时区偏移量

UTC与某个时区的本地时间之间的差异以相对于UTC的偏移量(以秒为单位)表示,即需要添加到UTC以获得本地时间的秒数。总偏移量由两个部分组成,标准时间偏移量和夏令时偏移量。标准时间偏移量是添加到UTC以获得该时区标准时间的秒数。夏令时偏移量是添加到标准时间偏移量以获得该时区夏令时(缩写为DST,有时称为“日光时间”或“夏季时间”)的秒数。通常的夏令时情况(冬季使用标准时间,夏季使用夏令时)具有正的夏令时偏移量。然而,一些时区具有负的夏令时偏移量,用于冬季,夏季则使用标准时间。

请注意,随着国家更改夏令时法律甚至其标准时间偏移量,时区的标准和夏令时偏移量可能会随时间变化。

许可证

该类包括根据Unicode数据文件和软件许可条款从CLDR数据文件中获得的数据。详情请参见Unicode通用区域设置数据存储库(CLDR)。

另请参阅

QDateTime QCalendar

class Initialization

最简单轻量级时间表示的类型。

此枚举标识了一种轻量级的时间表示类型,用于传递给QTimeZone构造函数,其中不需要进一步的数据。它们对应于TimeSpec的同名成员。

常量

描述

QTimeZone.LocalTime

此时间表示对应于系统函数隐式使用的时间表示,使用time_tstruct tm值在本地时间和UTC时间之间进行映射。

QTimeZone.UTC

这个时间表示法,协调世界时,是所有支持的时间表示法中民用时间所参考的基础表示法。它由国际电信联盟定义。

在6.5版本中添加。

class TimeType

时区时间的类型,例如在请求名称时。在不应用夏令时的时区中,所有三个值可能返回相同的结果。

常量

描述

QTimeZone.StandardTime

时区中的标准时间,即不实行夏令时的时间。例如,在格式化显示名称时,这将显示类似“太平洋标准时间”的内容。

QTimeZone.DaylightTime

夏令时生效的时间。例如,在格式化显示名称时,这将显示类似“太平洋夏令时”的内容。

QTimeZone.GenericTime

一个不特别指定为标准时间或夏令时的时间,可能是未知时间或中性形式。例如,在格式化显示名称时,这将显示类似“太平洋时间”的内容。

此类型仅在启用功能 timezone 时可用。

class NameType

时区名称的类型。

常量

描述

QTimeZone.DefaultName

时区名称的默认形式,可以是LongName、ShortName或OffsetName之一

QTimeZone.LongName

时区名称的长格式,例如“中欧时间”

QTimeZone.ShortName

时区名称的简短形式,通常是一个缩写,例如“CET”,在有时区缩写的地区使用,否则使用紧凑的GMT偏移形式,例如“GMT+1”

QTimeZone.OffsetName

时区名称的标准ISO偏移格式,例如“UTC+01:00”

此类型仅在启用功能 timezone 时可用。

PySide6.QtCore.QTimeZone.MinUtcOffsetSecs
PySide6.QtCore.QTimeZone.MaxUtcOffsetSecs
__init__()

创建一个空/无效的时区实例。

__init__(spec)
Parameters:

spec初始化

创建一个描述UTC或本地时间的轻量级实例。

__init__(ianaId)
Parameters:

ianaIdQByteArray

使用请求的IANA ID ianaId创建一个时区实例。

ID必须是可用的系统ID之一或有效的带偏移量的UTC ID,否则将返回无效的时区。对于带偏移量的UTC ID,当它们实际上不是IANA ID时,生成的实例的id()可能与传递给构造函数的ID不同。

此构造函数仅在启用功能 timezone 时可用。

__init__(other)
Parameters:

其他QTimeZone

复制构造函数:将other复制到此。

__init__(offsetSeconds)
Parameters:

offsetSeconds – int

创建一个具有给定偏移量的时区实例,offsetSeconds,相对于UTC。

UTC的offsetSeconds必须在-16小时到+16小时之间,否则将返回无效的时区。

此构造函数仅在启用功能 timezone 时可用。返回的实例相当于轻量级时间表示 QTimeZone::fromSecondsAfterUtc(offsetSeconds),尽管它是作为时区实现的。

__init__(zoneId, offsetSeconds, name, abbreviation[, territory=QLocale.AnyTerritory[, comment=""]])
Parameters:
  • zoneIdQByteArray

  • offsetSeconds – int

  • name – str

  • 缩写 – str

  • territory国家

  • comment – str

创建一个与UTC固定偏移量的自定义时区实例。

返回的时区具有zoneId的ID和与UTC的偏移量offsetSecondsname将是displayName()用于LongName的名称,abbreviation将由displayName()用于ShortNameabbreviation(),而可选的territory将由territory()使用。comment是一个可选的注释,可以在GUI中显示以帮助用户选择时区。

UTC的offsetSeconds必须在-16小时到+16小时的范围内。zoneId 不能isTimeZoneIdAvailable()为true的ID,除非它是一个在availableTimeZoneIds()中不出现的UTC偏移名称。

如果自定义时区没有特定的区域,则将其设置为默认值AnyTerritory

此构造函数仅在启用功能 timezone 时可用。

abbreviation(atDateTime)
Parameters:

atDateTimeQDateTime

Return type:

字符串

返回给定atDateTime的时区缩写。

缩写可能会根据夏令时甚至历史事件而变化。

注意

缩写不能保证是该时区唯一的,不应代替ID或显示名称使用。缩写可能会根据底层操作系统进行本地化。要获得一致的本地化,请使用displayName(atDateTime, QTimeZone::ShortName, locale)

此方法仅在启用功能 timezone 时可用。

另请参阅

displayName()

asBackendZone()
Return type:

QTimeZone

将此QTimeZone转换为一个timeSpec()TimeZone的对象。

在所有情况下,结果的timeSpec()TimeZone。当这个QTimeZonetimeSpec()TimeZone时,返回这个QTimeZone本身。如果timeSpec()LocalTime,则返回systemTimeZone()

如果 timeSpec()UTC ,则返回 utc()。如果是 OffsetFromUTC,则将 QTimeZone (int) 的偏移量传递给它并返回结果。

当使用轻量级时间表示法——本地时间、UTC时间或与UTC固定偏移的时间时,使用仅在启用timezone功能时支持的方法可能比使用相应时区更昂贵。此方法将轻量级时间表示法映射到相应的时区——即基于系统提供或标准数据的实例。

此方法仅在启用功能 timezone 时可用。

另请参阅

初始化) fromSecondsAheadOfUtc()

static availableTimeZoneIds()
Return type:

.list of QByteArray

返回此系统上所有可用的IANA时区ID列表。

此方法仅在启用功能 timezone 时可用。

注意

the QTimeZone 构造函数也会接受一些不在返回列表中的UTC偏移ID - 列出所有可能的UTC偏移ID是不切实际的。

static availableTimeZoneIds(territory)
Parameters:

地区国家

Return type:

.list of QByteArray

static availableTimeZoneIds(offsetSeconds)
Parameters:

offsetSeconds – int

Return type:

.list of QByteArray

返回所有具有给定标准时间偏移量offsetSeconds的可用IANA时区ID列表。

在支持给定偏移量的情况下,QTimeZone(offsetSeconds).id() 包含在列表中,即使它不是 IANA ID。这种情况仅在给定偏移量没有 IANA UTC 偏移量 ID 时出现。

此方法仅在启用功能 timezone 时可用。

另请参阅

isTimeZoneIdAvailable() QTimeZone(int)

comment()
Return type:

字符串

返回时区的任何注释。

主机平台可能会提供注释以帮助用户选择正确的时区。根据平台的不同,这可能不会被本地化。

此方法仅在启用功能 timezone 时可用。

country()
Return type:

国家

注意

此函数已弃用。

请使用 territory() 代替。

返回时区的区域。

此方法仅在启用功能 timezone 时可用。

daylightTimeOffset(atDateTime)
Parameters:

atDateTimeQDateTime

Return type:

整数

返回给定atDateTime的夏令时偏移量,即需要添加到标准时间偏移量上以获得本地夏令时的秒数。

例如,对于时区“Europe/Berlin”,夏令时偏移量为+3600秒。在标准时间期间,daylightTimeOffset()将返回0,而在夏令时生效时,它将返回+3600。

此方法仅在启用功能 timezone 时可用。

displayName(timeType[, nameType=QTimeZone.DefaultName[, locale=QLocale()]])
Parameters:
Return type:

字符串

返回本地化的时区显示名称。

返回的名称是针对给定的locale的,适用于当给定的timeType生效并且形式由nameType指示时。如果时区显示名称随时间变化,将使用当前名称。如果没有适合本地化的给定类型的名称可用,则可能会使用另一种名称类型,或者可能返回空字符串。

如果未提供locale,则将使用应用程序的默认区域设置。对于由客户端代码创建的自定义时区,将使用提供给构造函数的数据,因为不会有可用的本地化数据。如果此时区无效,则返回空字符串。如果确定系统时区失败,这也可能出现在本地时间的表示中。

此方法仅在启用功能 timezone 时可用。

另请参阅

abbreviation()

displayName(atDateTime[, nameType=QTimeZone.DefaultName[, locale=QLocale()]])
Parameters:
Return type:

字符串

返回本地化的时区显示名称。

返回的名称是针对给定的locale,适用于给定的atDateTime,并且形式由nameType指示。显示名称可能会根据夏令时或历史事件而变化。如果没有适合本地化的给定类型的名称可用,则可能会使用其他名称类型,或者返回空字符串。

如果未提供locale,则将使用应用程序的默认区域设置。对于由客户端代码创建的自定义时区,将使用提供给构造函数的数据,因为不会有可用的本地化数据。如果此时区无效,则返回空字符串。如果确定系统时区失败,这也可能出现在本地时间的表示中。

此方法仅在启用功能 timezone 时可用。

另请参阅

abbreviation()

fixedSecondsAheadOfUtc()
Return type:

整数

对于一个轻量级的时间表示,其timeSpec()OffsetFromUTC,这将返回它所描述的与UTC的固定偏移量。对于任何其他时间表示,即使该时间表示确实具有与UTC的恒定偏移量,它也会返回0。

static fromSecondsAheadOfUtc(offset)
Parameters:

offset – int

Return type:

QTimeZone

hasAlternativeName(alias)
Parameters:

别名QByteArrayView

Return type:

布尔

如果 alias 是这个时区的替代名称,则返回 true

IANA(前身为Olson)数据库在其历史过程中重命名了一些时区。还有一些时区在1970年之前有所不同,但现在被视为同义词。一些后端可能拥有追溯到1970年之前的数据,并在后一种情况下生成不同的时区。其他后端可能生成除了通过id()之外无法区分的时区。此方法确定一个ID是否(至少自1970年以来)引用与此时区对象描述的相同时区。

此方法仅在启用功能 timezone 时可用。

hasDaylightTime()
Return type:

布尔

如果时区在任何时间实行过夏令时,则返回true

此方法仅在启用功能 timezone 时可用。

hasTransitions()
Return type:

布尔

如果系统后端支持获取过渡效果,则返回 true

过渡是指时区的变化:这些变化发生在夏令时开启或关闭时,以及当局更改时区偏移量时。

此方法仅在启用功能 timezone 时可用。

static ianaIdToWindowsId(ianaId)
Parameters:

ianaIdQByteArray

Return type:

QByteArray

返回与给定ianaId等效的Windows ID。

此方法仅在启用功能 timezone 时可用。

id()
Return type:

QByteArray

返回时区的IANA ID。

IANA ID在所有平台上使用。在Windows上,这些ID从Windows ID转换为最适合的IANA ID,用于时区和地区。

如果此时区实例不是从IANA ID构建的,则其ID由构建方式决定。在大多数情况下,使用构建实例时传递的ID。(自定义时区的构造函数使用传递的ID,该ID不能是IANA ID。)有两个例外。

  • 仅通过传递以秒为单位的UTC偏移量构造的实例在构造时没有传递ID。

  • 仅接受IANA ID的构造函数也将接受一些实际上不是IANA ID的UTC偏移ID:它对这些ID的处理等同于传递相应的偏移秒数,如第一个异常所示。

在这两种特殊情况下,如果存在具有指定偏移量的IANA UTC偏移区域,则构造的实例使用该IANA区域的ID,即使这可能与传递给构造函数的(非IANA)UTC偏移ID不同。否则,实例使用从其偏移量合成的ID,格式为UTC±hh:mm:ss,省略任何末尾的:00表示零秒或零分钟。同样,这可能与传递给构造函数的UTC偏移ID不同。

此方法仅在启用功能 timezone 时可用。

isDaylightTime(atDateTime)
Parameters:

atDateTimeQDateTime

Return type:

布尔

如果给定的atDateTime处于夏令时期间,则返回true

此方法仅在启用功能 timezone 时可用。

static isTimeZoneIdAvailable(ianaId)
Parameters:

ianaIdQByteArray

Return type:

布尔

如果给定的时区 ianaId 在此系统上可用,则返回 true

这可能包括一些非IANA ID,特别是UTC偏移ID,这些ID未在availableTimeZoneIds()中列出。

此方法仅在启用功能 timezone 时可用。

另请参阅

availableTimeZoneIds()

isUtcOrFixedOffset()
Return type:

布尔

如果timeSpec()UTCOffsetFromUTC,则返回true

当它为真时,时间描述不会随时间变化,例如本地时间或时区可能发生的季节性夏令时变化。了解这一点可以节省调用代码进行各种其他检查的需要。

static isUtcOrFixedOffset(spec)
Parameters:

规格TimeSpec

Return type:

布尔

如果 specUTCOffsetFromUTC,则返回 true

isValid()
Return type:

布尔

如果此时区有效,则返回 true

nextTransition(afterDateTime)
Parameters:

afterDateTimeQDateTime

Return type:

OffsetData

返回给定afterDateTime之后的第一个时区转换。这在您有一个转换时间并希望找到其后的转换时非常有用。

如果在给定的afterDateTime之后没有过渡,则将返回一个无效的OffsetData,其atUtc为一个无效的QDateTime

给定的 afterDateTime 是排他的。

此方法仅在启用功能 timezone 时可用。

offsetData(forDateTime)
Parameters:

forDateTimeQDateTime

Return type:

OffsetData

返回给定forDateTime的有效偏移量详细信息。

这相当于单独调用abbreviation()和所有三个偏移函数,但可能更高效,并且可能获得不同的缩写本地化。如果给定的日期时间没有此数据,将返回一个无效的OffsetData,其atUtc为一个无效的QDateTime

此方法仅在启用功能 timezone 时可用。

offsetFromUtc(atDateTime)
Parameters:

atDateTimeQDateTime

Return type:

整数

返回给定atDateTime处的总有效偏移量,即需要添加到UTC以获得本地时间的秒数。这包括可能生效的任何夏令时偏移量,即它是给定日期时间的standardTimeOffset()daylightTimeOffset()的总和。

例如,对于时区“Europe/Berlin”,标准时间偏移量为+3600秒,夏令时偏移量为+3600秒。在标准时间期间,offsetFromUtc()将返回+3600(UTC+01:00),而在夏令时期间,它将返回+7200(UTC+02:00)。

此方法仅在启用功能 timezone 时可用。

__ne__(rhs)
Parameters:

rhsQTimeZone

Return type:

布尔

如果 lhs 时区不等于 rhs 时区,则返回 true

如果两种表示在内部描述上不同,即使它们在所有时间点的表示上一致,它们也是不同的。特别是,一个轻量级的时间表示可能与一个时区重合,但两者不会相等。

__eq__(rhs)
Parameters:

rhsQTimeZone

Return type:

布尔

如果lhs时区等于rhs时区,则返回true

如果两种表示在内部描述上不同,即使它们在所有时间点的表示上一致,它们也是不同的。特别是,一个轻量级的时间表示可能与一个时区重合,但两者不会相等。

previousTransition(beforeDateTime)
Parameters:

beforeDateTimeQDateTime

Return type:

OffsetData

返回给定beforeDateTime之前的第一个时区转换。这在您有一个转换时间并希望找到它之前的转换时非常有用。

如果在给定的beforeDateTime之前没有过渡,则将返回一个无效的OffsetData,其atUtc为一个无效的QDateTime

给定的 beforeDateTime 是排他的。

此方法仅在启用功能 timezone 时可用。

standardTimeOffset(atDateTime)
Parameters:

atDateTimeQDateTime

Return type:

整数

返回给定atDateTime的标准时间偏移量,即需要添加到UTC以获得本地标准时间的秒数。这不包括可能生效的任何夏令时偏移。

例如,对于时区“Europe/Berlin”,标准时间偏移量为+3600秒。在标准时间和夏令时期间,offsetFromUtc() 将返回+3600(UTC+01:00)。

此方法仅在启用功能 timezone 时可用。

swap(other)
Parameters:

其他QTimeZone

将此时区实例与 other 交换。此函数非常快速且永远不会失败。

static systemTimeZone()
Return type:

QTimeZone

返回一个描述本地系统时间的QTimeZone对象。

此方法仅在启用功能 timezone 时可用。返回的实例通常等同于轻量级时间表示 QTimeZone(QTimeZone::LocalTime),尽管它是作为时区实现的。

返回的对象不会反映系统时区的任何后续更改。它表示调用asBackendZone()时生效的本地时间。在配置错误的系统上,例如那些缺少Qt编译所依赖的后端时区数据的系统,它可能无效。在这种情况下,会输出警告。

static systemTimeZoneId()
Return type:

QByteArray

返回当前系统时区的IANA ID。

等同于调用 systemTimeZone()id(),但可能会绕过一些计算来获取它。从返回的字节数组构造一个 QTimeZone 将产生与 systemTimeZone() 相同的结果。

如果后端无法确定正确的系统时区,结果为空。在这种情况下,systemTimeZone()isValid() 为 false,并且如果调用此方法或 systemTimeZone(),则会输出警告。

如果后端能够确定正确的系统时区但无法确定其名称,则返回一个空的字节数组。例如,在Windows上,系统本机ID被转换为IANA ID - 如果系统ID在内部转换代码中未知,则结果应为空。在这种情况下,systemTimeZone()isValid() 应为true。

此方法仅在启用功能 timezone 时可用。

注意

在 Qt 6.7 之前,当无法确定结果时,会返回误导性的结果“UTC”。

另请参阅

systemTimeZone()

territory()
Return type:

国家

返回时区的区域。

返回AnyTerritory意味着该时区没有已知的领土关联。在某些情况下,这可能是因为该时区没有关联的领土——例如,UTC——或者因为该时区在多个领土中使用——例如,CET。在其他情况下,QTimeZone后端可能不知道该时区与哪个领土相关联——例如,因为它不是使用该时区的领土的主要时区。

此方法仅在启用功能 timezone 时可用。

timeSpec()
Return type:

TimeSpec

返回一个TimeSpec,用于标识时间表示的类型。

如果结果是TimeZone,则此时间描述是一个时区(由系统提供或标准数据支持);否则,它是一个轻量级的时间表示。如果结果是LocalTime,它描述的是本地时间:详情请参见TimeSpec

transitions(fromDateTime, toDateTime)
Parameters:
Return type:

QTimeZone.OffsetData 的列表

返回给定日期时间之间的所有时区转换列表。

给定的 fromDateTimetoDateTime 是包含的。每个条目的 atUtc 成员描述了转换的时刻,此时其他成员给出的偏移量和缩写生效。

此方法仅在启用功能 timezone 时可用。

static utc()
Return type:

QTimeZone

返回一个描述UTC作为时区的QTimeZone对象。

此方法仅在启用timezone功能时可用。它等同于将0传递给QTimeZone(int offsetSeconds)和轻量级时间表示QTimeZoneUTC),尽管它是作为时区实现的,与后者不同。

static windowsIdToDefaultIanaId(windowsId)
Parameters:

windowsIdQByteArray

Return type:

QByteArray

返回给定windowsId的默认IANA ID。

因为一个Windows ID可以覆盖多个不同地区的IANA ID,此函数返回最常用的IANA ID,而不考虑地区,因此应谨慎使用。通常最好请求特定地区的默认值。

此方法仅在启用功能 timezone 时可用。

static windowsIdToDefaultIanaId(windowsId, territory)
Parameters:
Return type:

QByteArray

返回给定windowsIdterritory的默认IANA ID。

因为一个Windows ID可以覆盖给定区域内的多个IANA ID,所以返回该区域中最常用的IANA ID。

作为一种特殊情况,AnyTerritory 返回那些没有已知地域关联的IANA ID的默认值。

此方法仅在启用功能 timezone 时可用。

static windowsIdToIanaIds(windowsId)
Parameters:

windowsIdQByteArray

Return type:

.list of QByteArray

返回给定windowsId的所有IANA ID。

返回的列表按字母顺序排序。

此方法仅在启用功能 timezone 时可用。

static windowsIdToIanaIds(windowsId, territory)
Parameters:
Return type:

.list of QByteArray

返回给定windowsIdterritory的所有IANA ID。

作为一个特殊情况,AnyTerritory 选择那些没有已知地域关联的IANA ID。

返回的列表按使用频率排序,即一个地区内较大的区域会先列出。

此方法仅在启用功能 timezone 时可用。

class OffsetData

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。

详细描述

PySide6.QtCore.QTimeZone.OffsetData.abbreviation
PySide6.QtCore.QTimeZone.OffsetData.atUtc
PySide6.QtCore.QTimeZone.OffsetData.offsetFromUtc
PySide6.QtCore.QTimeZone.OffsetData.standardTimeOffset
PySide6.QtCore.QTimeZone.OffsetData.daylightTimeOffset