cf.Datetime¶
-
class
cf.
Datetime
(year, month=1, day=1, hour=0, minute=0, second=0, microsecond=0, dayofwk=-1, dayofyr=1, calendar=None)[source]¶ Bases:
object
A date-time object which supports CF calendars.
Any date and time valid in any CF calendar is allowed.
Comparion operations
Comparison operations are defined for
cf.Datetime
anddatetime.datetime
objects:>>> cf.Datetime(2004, 2, 1) < cf.Datetime(2004, 2, 30) True >>> cf.Datetime(2004, 2, 1) <= cf.Datetime(2004, 2, 30) True >>> cf.Datetime(2004, 2, 1) > cf.Datetime(2004, 2, 30) False >>> cf.Datetime(2004, 2, 1) >= cf.Datetime(2004, 2, 30) False >>> cf.Datetime(2004, 2, 1) == cf.Datetime(2004, 2, 30) False >>> cf.Datetime(2004, 2, 1) != cf.Datetime(2004, 2, 30) True
>>> import datetime >>> cf.Datetime(2004, 2, 30) > datetime.datetime(2004, 2, 1) True >>> datetime.datetime(2004, 2, 1) > cf.Datetime(2004, 2, 30) False
Arithmetic operations
Addition and subtraction operations are defined for
cf.Datetime
andcf.TimeDuration
objects:>>> cf.Datetime(2003, 2, 1) + cf.D(30) <CF Datetime: 2003-03-03T00:00:00Z> >>> cf.M(30) + cf.Datetime(2003, 2, 1) <CF Datetime: 2003-03-03T00:00:00Z> >>> cf.Datetime(2003, 2, 1, calendar='360_day') + cf.D(30) <CF Datetime: 2003-03-01T00:00:00Z 360_day> >>> cf.Datetime(2003, 2, 1, calendar='360_day') - cf.D(30) <CF Datetime: 2003-01-01T00:00:00Z 360_day>
>>> cf.Datetime(2003, 2, 1) - cf.h(30) <CF Datetime: 2003-01-30T18:00:00Z> >>> cf.s(456) + cf.Datetime(2003, 2, 1) <CF Datetime: 2003-02-01T00:07:36Z>
>>> cf.Datetime(2003, 2, 1) + cf.M(1) <CF Datetime: 2003-03-01T00:00:00Z> >>> cf.M(1) + cf.Datetime(2003, 2, 1, calendar='360_day') <CF Datetime: 2003-03-01T00:00:00Z 360_day> >>> cf.Datetime(2003, 2, 1, calendar='noleap') + cf.M(245) <CF Datetime: 2023-07-01T00:00:00Z noleap> >>> cf.Datetime(2003, 2, 1) - cf.Y(2) <CF Datetime: 2001-02-01T00:00:00Z> >>> cf.Datetime(2003, 2, 1) - cf.Y(2) + cf.D(10) <CF Datetime: 2001-02-11T00:00:00Z>
>>> d = cf.Datetime(2003, 2, 1) >>> d += cf.s(34567689) >>> d <CF Datetime: 2004-03-07T02:08:09Z>
Attributes
Attribute Description year
The year of the date month
The month of the year of the date day
The day of the month of the date hour
The hour of the day of the date minute
The minute of the hour of the date second
The second of the minute of the date microsecond
The microsecond of the second of the date Constructors
For convenience, the following functions may also be used to create
cf.Datetime
objects:Function Description cf.dt
Create a date-time object. For example:
>>> cf.dt(2001, 12, 3) == cf.dt('2001-12-3') == cf.Datetime(2001, 12, 3) True >>> cf.dt(cf.Datetime(2001, 12, 3)) == cf.Datetime(2001, 12, 3) True >>> import datetime >>> cf.dt(datetime.datetime(2001, 12, 3)) == cf.Datetime(2001, 12, 3) True
Initialization
Parameters: - year:
int
The year.
- month, day, hour, minute, second, microsecond:
int
, optional The month of the year, the day of the month and time of the day. month and day default to 1 and hour; minute, second and microsecond default to 0.
- calendar:
str
, optional Define the default CF calendar for the date-time.
- Example:
To set a calendar without leap years:
calendar='noleap'
.
Examples: >>> cf.Datetime(2003) <CF Datetime: 2003-01-01 00:00:00> >>> d = cf.Datetime(2003, 2, 30) >>> d = cf.Datetime(2003, 2, 30, 0) >>> d = cf.Datetime(2003, 2, 30, 0, 0) >>> d = cf.Datetime(2003, 2, 30, 0, 0, 0) >>> d = cf.Datetime(2003, 4, 5, 12, 30, 15) >>> d = cf.Datetime(year=2003, month=4, day=5, hour=12, minute=30, second=15) >>> d.year, d.month, d.day, d.hour, d.minute, d.second (2003, 4, 5, 12, 30, 15) >>> d.timetuple() (2003, 4, 5, 12, 30, 15, -1, 1)
- year:
Datetime methods¶
copy |
Return a deep copy. |
inspect |
Inspect the attributes. |
timetuple |
Return a tuple of the date-time attributes such as returned by datetime.datetime.timetuple . |