Skip to content

Commit 310b376

Browse files
authored
DOC: Fixing EX01 - Added examples (pandas-dev#53741)
* wip * Examples for tzname, utcoffset, utctimetuple, weekday, strptime
1 parent f152a25 commit 310b376

File tree

3 files changed

+113
-8
lines changed

3 files changed

+113
-8
lines changed

ci/code_checks.sh

-5
Original file line numberDiff line numberDiff line change
@@ -105,16 +105,11 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
105105
pandas.errors.UnsupportedFunctionCall \
106106
pandas.test \
107107
pandas.NaT \
108-
pandas.Timestamp.strptime \
109108
pandas.Timestamp.time \
110109
pandas.Timestamp.timetuple \
111110
pandas.Timestamp.timetz \
112111
pandas.Timestamp.to_datetime64 \
113112
pandas.Timestamp.toordinal \
114-
pandas.Timestamp.tzname \
115-
pandas.Timestamp.utcoffset \
116-
pandas.Timestamp.utctimetuple \
117-
pandas.Timestamp.weekday \
118113
pandas.arrays.TimedeltaArray \
119114
pandas.Period.asfreq \
120115
pandas.Period.now \

pandas/_libs/tslibs/nattype.pyx

+56-3
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,14 @@ class NaTType(_NaT):
429429
Return the day of the week represented by the date.
430430
431431
Monday == 0 ... Sunday == 6.
432+
433+
Examples
434+
--------
435+
>>> ts = pd.Timestamp('2023-01-01')
436+
>>> ts
437+
Timestamp('2023-01-01 00:00:00')
438+
>>> ts.weekday()
439+
6
432440
""",
433441
)
434442
isoweekday = _make_nan_func(
@@ -514,13 +522,10 @@ class NaTType(_NaT):
514522
""",
515523
)
516524
# _nat_methods
517-
utctimetuple = _make_error_func("utctimetuple", datetime)
518525
timetz = _make_error_func("timetz", datetime)
519526
timetuple = _make_error_func("timetuple", datetime)
520527
time = _make_error_func("time", datetime)
521528
toordinal = _make_error_func("toordinal", datetime)
522-
tzname = _make_error_func("tzname", datetime)
523-
utcoffset = _make_error_func("utcoffset", datetime)
524529

525530
# "fromisocalendar" was introduced in 3.8
526531
fromisocalendar = _make_error_func("fromisocalendar", datetime)
@@ -570,7 +575,49 @@ class NaTType(_NaT):
570575
datetime.date(2023, 1, 1)
571576
"""
572577
)
578+
utctimetuple = _make_error_func(
579+
"utctimetuple",
580+
"""
581+
Return UTC time tuple, compatible with time.localtime().
582+
583+
Examples
584+
--------
585+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
586+
>>> ts
587+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
588+
>>> ts.utctimetuple()
589+
time.struct_time(tm_year=2023, tm_mon=1, tm_mday=1, tm_hour=9,
590+
tm_min=0, tm_sec=0, tm_wday=6, tm_yday=1, tm_isdst=0)
591+
"""
592+
)
593+
utcoffset = _make_error_func(
594+
"utcoffset",
595+
"""
596+
Return utc offset.
597+
598+
Examples
599+
--------
600+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
601+
>>> ts
602+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
603+
>>> ts.utcoffset()
604+
datetime.timedelta(seconds=3600)
605+
"""
606+
)
607+
tzname = _make_error_func(
608+
"tzname",
609+
"""
610+
Return time zone name.
573611
612+
Examples
613+
--------
614+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
615+
>>> ts
616+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
617+
>>> ts.tzname()
618+
'CET'
619+
"""
620+
)
574621
ctime = _make_error_func(
575622
"ctime",
576623
"""
@@ -612,6 +659,12 @@ class NaTType(_NaT):
612659
Timestamp.strptime(string, format)
613660
614661
Function is not implemented. Use pd.to_datetime().
662+
663+
Examples
664+
--------
665+
>>> pd.Timestamp.strptime("2023-01-01", "%d/%m/%y")
666+
Traceback (most recent call last):
667+
NotImplementedError
615668
""",
616669
)
617670

pandas/_libs/tslibs/timestamps.pyx

+57
Original file line numberDiff line numberDiff line change
@@ -1591,13 +1591,62 @@ class Timestamp(_Timestamp):
15911591
) from err
15921592
return _dt.isocalendar()
15931593

1594+
def tzname(self):
1595+
"""
1596+
Return time zone name.
1597+
1598+
Examples
1599+
--------
1600+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
1601+
>>> ts
1602+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
1603+
>>> ts.tzname()
1604+
'CET'
1605+
"""
1606+
return super().tzname()
1607+
1608+
def utcoffset(self):
1609+
"""
1610+
Return utc offset.
1611+
1612+
Examples
1613+
--------
1614+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
1615+
>>> ts
1616+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
1617+
>>> ts.utcoffset()
1618+
datetime.timedelta(seconds=3600)
1619+
"""
1620+
return super().utcoffset()
1621+
1622+
def utctimetuple(self):
1623+
"""
1624+
Return UTC time tuple, compatible with time.localtime().
1625+
1626+
Examples
1627+
--------
1628+
>>> ts = pd.Timestamp('2023-01-01 10:00:00', tz='Europe/Brussels')
1629+
>>> ts
1630+
Timestamp('2023-01-01 10:00:00+0100', tz='Europe/Brussels')
1631+
>>> ts.utctimetuple()
1632+
time.struct_time(tm_year=2023, tm_mon=1, tm_mday=1, tm_hour=9,
1633+
tm_min=0, tm_sec=0, tm_wday=6, tm_yday=1, tm_isdst=0)
1634+
"""
1635+
return super().utctimetuple()
1636+
15941637
# Issue 25016.
15951638
@classmethod
15961639
def strptime(cls, date_string, format):
15971640
"""
15981641
Timestamp.strptime(string, format)
15991642
16001643
Function is not implemented. Use pd.to_datetime().
1644+
1645+
Examples
1646+
--------
1647+
>>> pd.Timestamp.strptime("2023-01-01", "%d/%m/%y")
1648+
Traceback (most recent call last):
1649+
NotImplementedError
16011650
"""
16021651
raise NotImplementedError(
16031652
"Timestamp.strptime() is not implemented. "
@@ -2463,6 +2512,14 @@ default 'raise'
24632512
Return the day of the week represented by the date.
24642513
24652514
Monday == 0 ... Sunday == 6.
2515+
2516+
Examples
2517+
--------
2518+
>>> ts = pd.Timestamp('2023-01-01')
2519+
>>> ts
2520+
Timestamp('2023-01-01 00:00:00')
2521+
>>> ts.weekday()
2522+
6
24662523
"""
24672524
# same as super().weekday(), but that breaks because of how
24682525
# we have overridden year, see note in create_timestamp_from_ts

0 commit comments

Comments
 (0)