PySide6.QtCore.QCalendar¶
- class QCalendar¶
-
概要¶
方法¶
def
__init__()def
dateFromParts()def
dayOfWeek()def
daysInMonth()def
daysInYear()def
hasYearZero()def
isDateValid()def
isGregorian()def
isLeapYear()def
isLunar()def
isLuniSolar()def
isProleptic()def
isSolar()def
isValid()def
monthName()def
monthsInYear()def
name()def
partsFromDate()def
weekDayName()
静态函数¶
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
一个
QCalendar对象使用特定系统的规则将年、月和日编号映射到特定的一天(最终由其儒略日编号标识)。默认的
QCalendar()是一个无零年的格里高利历。通过启用适当的功能或加载插件,可能支持其他日历。作为功能支持的日历可以通过将System枚举传递给构造函数来构建。所有支持的日历一旦构建完成,都可以通过名称来构建。(因此插件实例化其日历后端以注册它。)通过System访问的内置后端也可以通过名称始终可用。使用自定义后端的日历也可以使用在构建时分配给后端的唯一ID来构建。一个
QCalendar值是不可变的。- class Unspecified¶
- class System¶
此枚举类型用于指定日历系统的选择。
常量
描述
QCalendar.System.Gregorian
默认的日历,国际通用。
QCalendar.System.Julian
古罗马日历。
QCalendar.System.Milankovic
一些东正教教堂使用的修订版儒略历。
QCalendar.System.Jalali
太阳回历(也称为波斯历)。
QCalendar.System.IslamicCivil
(表格形式的)伊斯兰民用日历。
另请参阅
QCalendarSystemId
- __init__()¶
- __init__(name)
- Parameters:
name – str
- __init__(system)
- Parameters:
系统 –
System
- __init__(id)
- Parameters:
id –
SystemId
这是一个重载函数。
构建一个日历对象。
当使用自定义日历实现时,其后端在创建时会分配一个唯一的ID;将该ID作为
id传递给此构造函数将获取一个使用该后端的QCalendar。这在后端未按名称注册时非常有用。- static availableCalendars()¶
- Return type:
字符串列表
返回可用日历系统的名称列表。
这些可能由插件或链接到应用程序的其他代码提供,除了Qt提供的那些,其中一些由功能控制。
- dateFromParts(parts)¶
- Parameters:
部分 –
YearMonthDay- Return type:
- dateFromParts(year, month, day)
- Parameters:
year – int
month – 整数
day – 整数
- Return type:
- dateTimeToString(format, datetime, dateOnly, timeOnly, locale)¶
返回表示给定日期、时间或日期时间的字符串。
如果
datetime有效,则它被表示并且日期和时间字段的格式说明符都被识别;否则,如果dateOnly有效,则它被表示并且仅识别日期字段的格式说明符;最后,如果timeOnly有效,则它被表示并且仅识别时间字段的格式说明符。如果这些都不有效,则返回一个空字符串。请参阅
toString和toString()以了解支持的字段说明符。format中被识别为字段说明符的字符将被替换为代表日期和/或时间的适当数据的文本。表示它们的文本可能取决于指定的locale。format中的其他字符将原样复制到返回的字符串中。返回给定
date的星期几数字。如果日历无法表示指定的日期,则返回零。星期一返回1,星期日返回7。具有闰日的日历可能使用其他数字来表示这些日期。
另请参阅
- daysInMonth(month[, year=QCalendar.Unspecified])¶
- Parameters:
month – 整数
year – int
- Return type:
整数
返回给定
month和给定year中的天数。月份是连续编号的,每年的第一个月从1开始。如果
year是Unspecified(如果没有传递,这是默认值),则返回正常年份中该月的长度。- daysInYear(year)¶
- Parameters:
年份 – int
- Return type:
整数
返回给定
year中的天数。处理
未指定作为年份是未定义的。- hasYearZero()¶
- Return type:
布尔
如果此日历有零年,则返回
true。日历可能从其第一年开始表示年份,但无法描述其第一年之前的年份;这样的日历没有零年,也不是预推的。
一个日历,如果在其第一年之前表示年份,可以通过遵循通常的整数计数来简单地编号这些年份,因此第一年之前的年份是零年,之前的年份为负数;这样的日历是预推的,并且有一个零年。一个日历也可能有一个零年(例如,某个重大事件的年份,随后的年份是该事件后的第一年,第二年,依此类推),而不描述其零年之前的年份。这样的日历将有一个零年,但不是预推的。
然而,一些日历在表示其第一年之前的年份时使用另一种编号方式;例如,预推格里高利历的第一年是公元1年,之前的一年是公元前1年,再之前是公元前2年,依此类推。在这种情况下,我们使用负年份编号来表示这种替代编号方式,其中-1年表示1年之前的一年,-2年表示-1年之前的一年,依此类推。这样的日历是预推的,但没有零年。
另请参阅
- isDateValid(year, month, day)¶
- Parameters:
year – int
month – 整数
day – 整数
- Return type:
布尔
如果给定的
year、month和day在此日历中指定了一个有效的日期,则返回true。通常这意味着 1 <= 月份 <=
monthsInYear(年) 和 1 <= 日 <=daysInMonth(月, 年)。然而,带有闰日或闰月的日历可能会使情况复杂化。- isGregorian()¶
- Return type:
布尔
如果此日历对象是其他Qt API(例如在
QDate中)用作默认日历的格里高利日历对象,则返回true。- isLeapYear(year)¶
- Parameters:
年份 – int
- Return type:
布尔
如果给定的
year是闰年,则返回true。由于一年的长度不是整数天,有些年份比其他年份长。差异可能是一个整月或仅仅一天;具体细节因日历而异。
另请参阅
- isLunar()¶
- Return type:
布尔
如果此日历是农历,则返回
true。农历主要是基于月亮的相位。
- isLuniSolar()¶
- Return type:
布尔
如果这个日历是阴阳历,则返回
true。阴阳历表达了月亮的相位,但也适应了太阳在天空中相对于固定恒星的位置变化。
- isProleptic()¶
- Return type:
布尔
如果此日历是预推的,则返回
true。一个预推日历能够描述其起始之前任意长的年份。这些年份由负数的年份表示,可能还包括一个零年。
另请参阅
- isSolar()¶
- Return type:
布尔
如果此日历是阳历,则返回
true。阳历主要基于太阳在天空中相对于固定恒星的位置变化。
- isValid()¶
- Return type:
布尔
如果这是一个有效的日历对象,则返回true。
使用无法识别的日历名称构建日历可能会导致无效对象。在通过名称创建日历时,请使用此方法进行检查。
- matchCenturyToWeekday(parts, dow)¶
- Parameters:
parts –
YearMonthDaydow – 整数
- Return type:
调整日期的世纪以匹配给定的星期几。
当给定日期的星期几、月份中的日、月份和年份的最后两位时使用。返回一个
QDate实例,其中给定的dow作为其dayOfWeek(),匹配给定的parts中的月份和月份中的日。返回的QDate的year()应与parts.year相差100的倍数,优先选择较小的倍数和正倍数而非其负数。如果没有日期符合这些条件,将返回一个无效的
QDate:星期几与给定的其他数据不兼容。例如,在格里高利历中,其400年的周期正好是整数周,因此任何给定的月份和该月的某一天,在具有给定最后两位数的年份中,只会落在四个星期几上。(在世纪之交的2月29日这个特殊情况下,当那一年是闰年时,只有星期二这一种可能。)- maximumDaysInMonth()¶
- Return type:
整数
返回日历中任何一年中最长月份的天数。
- maximumMonthsInYear()¶
- Return type:
整数
返回任何年份可能包含的最大月数。
- minimumDaysInMonth()¶
- Return type:
整数
返回日历中任何一年中最短月份的天数。
- monthName(locale, month[, year=QCalendar.Unspecified[, format=QLocale.LongFormat]])¶
- Parameters:
locale –
QLocalemonth – 整数
year – int
format –
FormatType
- Return type:
字符串
返回一个适当本地化的月份名称。
月份由一个数字表示,
month= 1 表示一年中的第一个月,随后的月份依此类推。如果month数字无法识别,则返回一个空字符串。year可能是未指定的,在这种情况下,应使用典型年份的月份从数字到名称的映射。一些日历有闰月,这些闰月并不总是在年末;它们的月份数字到名称的映射可能取决于闰月的位置。因此,如果已知,通常应指定年份。名称以通常用于完整日期的形式返回,在指定的
locale中;format决定了它应如何完整表达(即缩写到什么程度)。- monthsInYear(year)¶
- Parameters:
年份 – int
- Return type:
整数
返回给定
year中的月份数。如果
year是Unspecified,则返回一年中的最大月数。- name()¶
- Return type:
字符串
此日历的主要名称。
日历也可能有一些别名。通过名称实例化的日历可能会使用这样的别名,在这种情况下,它的name()不需要与实例化时使用的别名匹配。
将
QDate转换为年、月和日。如果日历无法表示给定的
date,则返回结构的isValid()应为false。否则,其年、月和日成员记录其表示的相应部分。- standaloneMonthName(locale, month[, year=QCalendar.Unspecified[, format=QLocale.LongFormat]])¶
- Parameters:
locale –
QLocalemonth – 整数
year – int
format –
FormatType
- Return type:
字符串
返回一个适当本地化的月份独立名称。
月份由一个数字表示,
month= 1 表示一年中的第一个月,随后的月份依此类推。如果month数字无法识别,则返回一个空字符串。year可能是未指定的,在这种情况下,应使用典型年份的月份从数字到名称的映射。一些日历有闰月,这些闰月并不总是在年末;它们的月份数字到名称的映射可能取决于闰月的位置。因此,如果已知,通常应指定年份。名称以在指定的
locale中单独使用的形式返回;format决定了它应如何完整表达(即缩写到什么程度)。- standaloneWeekDayName(locale, day[, format=QLocale.LongFormat])¶
- Parameters:
locale –
QLocaleday – 整数
format –
FormatType
- Return type:
字符串
返回一周中某一天的适当本地化独立名称。
一周中的天数从星期一的1编号到星期日的7。某些日历可能支持更高的数字来表示其他日子(例如,不属于任何一周的闰日)。如果
day编号无法识别,则返回空字符串。名称以在指定
locale中单独使用时的形式返回(例如,在日历的表格显示中作为列标题,其中连续几周作为行);format决定了它应如何完整地表达(即缩写到什么程度)。另请参阅
- weekDayName(locale, day[, format=QLocale.LongFormat])¶
- Parameters:
locale –
QLocaleday – 整数
format –
FormatType
- Return type:
字符串
返回一周中某一天的适当本地化名称。
一周中的天数从星期一的1到星期日的7编号。一些日历可能支持更高的数字来表示其他日子(例如,不属于任何一周的闰日)。如果
day编号无法识别,则返回空字符串。名称以通常用于完整日期的形式返回,在指定的
locale中;format决定了它应如何完整表达(即缩写到什么程度)。- class YearMonthDay¶
概要¶
方法¶
def
__init__()def
isValid()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
- PySide6.QtCore.QCalendar.YearMonthDay.year¶
- PySide6.QtCore.QCalendar.YearMonthDay.month¶
- PySide6.QtCore.QCalendar.YearMonthDay.day¶
- __init__()¶
- __init__(y[, m=1[, d=1]])
- Parameters:
y – 整数
m – 整数
d – 整数
- isValid()¶
- Return type:
布尔
- class SystemId¶
概要¶
方法¶
def
__init__()def
index()def
isValid()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
这是一个不透明类型,用于识别自定义日历实现。此类型值的唯一支持来源是后端的
calendarId()方法。如果此类型的值的isValid()为false,则不会识别成功注册的后端。此类型值的唯一有效使用者是QCalendar构造函数,只有在传递给它的ID有效时,才会生成有效的QCalendar实例。- __init__()¶
- index()¶
- Return type:
整数
- isValid()¶
- Return type:
布尔
如果这是一个有效的日历实现标识符,则返回
true,否则返回false。另请参阅