ladybug.dt module¶
Ladybug datetime.
- class ladybug.dt.Date(month=1, day=1, leap_year=False)[source]¶
Bases:
date
Ladybug Date.
- Parameters
month – A value for month between 1-12. Default: 1.
day – A value for day between 1-31. Default: 1.
leap_year – A boolean to indicate if date is for a leap year. Default: False.
- Properties:
day
doy
leap_year
month
year
- ctime()¶
Return ctime() style string.
- classmethod from_array(date_array)[source]¶
Create Ladybug Date from am array of integers.
- Parameters
datetime_array – An array of 2 integers (and optional leap_year boolean) ordered as follows: (month, day, leap_year)
- classmethod from_date_string(date_string, leap_year=False)[source]¶
Create Ladybug Date from a Date string.
Usage:
dt = Date.from_date_string("31 Dec")
- classmethod from_dict(data)[source]¶
Create date from a dictionary.
- Parameters
data – A python dictionary in the following format
{ 'month': 1 # A value for month between 1-12. (Default: 1) 'day': 1 # A value for day between 1-31. (Default: 1) }
- classmethod from_doy(doy, leap_year=False)[source]¶
Create Ladybug Date from an day of the year.
- Parameters
doy – An int value 0 <= and < 366
- fromisoformat()¶
str -> Construct a date from the output of date.isoformat()
- fromordinal()¶
int -> date corresponding to a proleptic Gregorian ordinal.
- fromtimestamp()¶
timestamp -> local date from a POSIX timestamp (like time.time()).
- isocalendar()¶
Return a 3-tuple containing ISO year, week number, and weekday.
- isoformat()¶
Return string in ISO 8601 format, YYYY-MM-DD.
- isoweekday()¶
Return the day of the week represented by the date. Monday == 1 … Sunday == 7
- replace()¶
Return date with new specified fields.
- strftime()¶
format -> strftime() style string.
- timetuple()¶
Return time tuple, compatible with time.localtime().
- today()¶
Current date or datetime: same as self.__class__.fromtimestamp(time.time()).
- toordinal()¶
Return proleptic Gregorian ordinal. January 1 of year 1 is day 1.
- weekday()¶
Return the day of the week represented by the date. Monday == 0 … Sunday == 6
- day¶
- property doy¶
Calculate day of the year for this date.
- property leap_year¶
Boolean to note whether Date belongs to a leap year or not.
- max = datetime.date(9999, 12, 31)¶
- min = datetime.date(1, 1, 1)¶
- month¶
- resolution = datetime.timedelta(days=1)¶
- year¶
- class ladybug.dt.DateTime(month=1, day=1, hour=0, minute=0, leap_year=False)[source]¶
Bases:
datetime
Create Ladybug Date time.
- Parameters
month – A value for month between 1-12 (Default: 1).
day – A value for day between 1-31 (Default: 1).
hour – A value for hour between 0-23 (Default: 0).
minute – A value for month between 0-59 (Default: 0).
leap_year – A boolean to indicate if datetime is for a leap year (Default: False).
- Properties:
month
day
hour
leap_year
doy
hoy
int_hoy
minute
moy
float_hour
tzinfo
year
- add_hour(hour)[source]¶
Create a new DateTime from this time + timedelta.
- Parameters
hour – A float value in hours (e.g. .5 = half an hour)
- add_minute(minute)[source]¶
Create a new DateTime after the minutes are added.
- Parameters
minute – An integer value for minutes.
- astimezone()¶
tz -> convert to local time in new timezone tz
- combine()¶
date, time -> datetime with same date and time fields
- ctime()¶
Return ctime() style string.
- dst()¶
Return self.tzinfo.dst(self).
- classmethod from_array(datetime_array)[source]¶
Create Ladybug DateTime from am array of integers.
- Parameters
datetime_array – An array of 4 integers (and optional leap_year boolean) ordered as follows: (month, day, hour, minute, leap_year)
- classmethod from_date_and_time(date, time)[source]¶
Create Ladybug DateTime from a Date and a Time object.
- Parameters
date – A ladybug Date object.
time – A ladybug Time object.
- classmethod from_date_time_string(datetime_string, leap_year=False)[source]¶
Create Ladybug DateTime from a DateTime string.
- Parameters
datetime_string – A text string representing a DateTime (ie. “21 Jun 12:00”)
leap_year – Boolean to note whether the Date Time is a part of a leap year. Default: False.
Usage:
dt = DateTime.from_date_time_string("31 Dec 12:00")
- classmethod from_dict(data)[source]¶
Create datetime from a dictionary.
- Parameters
data – A python dictionary in the following format
{ 'month': 1 #A value for month between 1-12. (Default: 1) 'day': 1 # A value for day between 1-31. (Default: 1) 'hour': 0 # A value for hour between 0-23. (Default: 0) 'minute': 0 # A value for month between 0-59. (Default: 0) }
- classmethod from_first_hour(leap_year=False)[source]¶
Create Ladybug DateTime for the first hour of the year.
- Parameters
leap_year – Boolean to note whether the Date Time is a part of a leap year. Default: False.
- classmethod from_hoy(hoy, leap_year=False)[source]¶
Create Ladybug Datetime from an hour of the year.
- Parameters
hoy – A float value 0 <= and < 8760
leap_year – Boolean to note whether the Date Time is a part of a leap year. Default: False.
- classmethod from_last_hour(leap_year=False)[source]¶
Create Ladybug DateTime for the last hour of the year.
- Parameters
leap_year – Boolean to note whether the Date Time is a part of a leap year. Default: False.
- classmethod from_moy(moy, leap_year=False)[source]¶
Create Ladybug Datetime from a minute of the year.
- Parameters
moy – An integer value 0 <= and < 525600
leap_year – Boolean to note whether the Date Time is a part of a leap year. Default: False.
- fromisoformat()¶
string -> datetime from datetime.isoformat() output
- fromordinal()¶
int -> date corresponding to a proleptic Gregorian ordinal.
- fromtimestamp()¶
timestamp[, tz] -> tz’s local time from POSIX timestamp.
- isocalendar()¶
Return a 3-tuple containing ISO year, week number, and weekday.
- isoformat()¶
[sep] -> string in ISO 8601 format, YYYY-MM-DDT[HH[:MM[:SS[.mmm[uuu]]]]][+HH:MM]. sep is used to separate the year from the time, and defaults to ‘T’. timespec specifies what components of the time to include (allowed values are ‘auto’, ‘hours’, ‘minutes’, ‘seconds’, ‘milliseconds’, and ‘microseconds’).
- isoweekday()¶
Return the day of the week represented by the date. Monday == 1 … Sunday == 7
- now()¶
Returns new datetime object representing current time local to tz.
- tz
Timezone object.
If no tz is specified, uses local timezone.
- replace()¶
Return datetime with new specified fields.
- strftime()¶
format -> strftime() style string.
- strptime()¶
string, format -> new datetime parsed from a string (like time.strptime()).
- sub_hour(hour)[source]¶
Create a new DateTime from this time - timedelta.
- Parameters
hour – A float value in hours (e.g. .5 is half an hour and 2 is two hours).
- sub_minute(minute)[source]¶
Create a new DateTime after the minutes are subtracted.
- Parameters
minute – An integer value for the number of minutes.
- timestamp()¶
Return POSIX timestamp as float.
- timetuple()¶
Return time tuple, compatible with time.localtime().
- timetz()¶
Return time object with same time and tzinfo.
- today()¶
Current date or datetime: same as self.__class__.fromtimestamp(time.time()).
- toordinal()¶
Return proleptic Gregorian ordinal. January 1 of year 1 is day 1.
- tzname()¶
Return self.tzinfo.tzname(self).
- utcfromtimestamp()¶
Construct a naive UTC datetime from a POSIX timestamp.
- utcnow()¶
Return a new datetime representing UTC day and time.
- utcoffset()¶
Return self.tzinfo.utcoffset(self).
- utctimetuple()¶
Return UTC time tuple, compatible with time.localtime().
- weekday()¶
Return the day of the week represented by the date. Monday == 0 … Sunday == 6
- property date¶
Get a Date object associated with this DateTime.
- day¶
- property doy¶
Calculate day of the year for this date time.
- property float_hour¶
- Type
Get hour and minute as a float value, e.g. 6.25 for 6
- fold¶
- hour¶
- property hoy¶
Calculate hour of the year for this date time.
- property int_hoy¶
Calculate hour of the year for this date time as an integer.
This output assumes the minute is 0.
- property leap_year¶
Boolean to note whether DateTime belongs to a leap year or not.
- max = datetime.datetime(9999, 12, 31, 23, 59, 59, 999999)¶
- microsecond¶
- min = datetime.datetime(1, 1, 1, 0, 0)¶
- minute¶
- month¶
- property moy¶
Calculate minute of the year for this date time.
- resolution = datetime.timedelta(microseconds=1)¶
- second¶
- property time¶
Get a Time object associated with this DateTime.
- tzinfo¶
- year¶
- class ladybug.dt.Time(hour=0, minute=0)[source]¶
Bases:
time
Create Ladybug Time.
- Parameters
hour – A value for hour between 0-23 (Default: 0).
minute – A value for month between 0-59 (Default: 0).
- Properties:
hour
minute
mod
second
tzinfo
- dst()¶
Return self.tzinfo.dst(self).
- classmethod from_array(time_array)[source]¶
Create Ladybug Time from am array of integers.
- Parameters
datetime_array – An array of 2 integers ordered as follows: (hour, minute)
- classmethod from_dict(data)[source]¶
Create time from a dictionary.
- Parameters
data – A python dictionary in the following format
{ 'hour': 0 # A value for hour between 0-23. (Default: 0) 'minute': 0 # A value for month between 0-59. (Default: 0) }
- classmethod from_mod(mod)[source]¶
Create Ladybug Time from a minute of the day.
- Parameters
mod – An int value 0 <= and < 1440
- classmethod from_time_string(time_string, leap_year=False)[source]¶
Create Ladybug Time from a Time string.
Usage:
dt = Time.from_time_string("12:00")
- fromisoformat()¶
string -> time from time.isoformat() output
- isoformat()¶
Return string in ISO 8601 format, [HH[:MM[:SS[.mmm[uuu]]]]][+HH:MM].
timespec specifies what components of the time to include.
- replace()¶
Return time with new specified fields.
- strftime()¶
format -> strftime() style string.
- tzname()¶
Return self.tzinfo.tzname(self).
- utcoffset()¶
Return self.tzinfo.utcoffset(self).
- property float_hour¶
- Type
Get hour and minute as a float value, e.g. 6.25 for 6
- fold¶
- hour¶
- max = datetime.time(23, 59, 59, 999999)¶
- microsecond¶
- min = datetime.time(0, 0)¶
- minute¶
- property mod¶
Calculate minute of the day for this time.
- resolution = datetime.timedelta(microseconds=1)¶
- second¶
- tzinfo¶