Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 35.2k
gh-85453: Adapt datetime.rst to devguide recommendations for code snippets and variables#118068
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
562d43eb4d56618840921291dbcced6d9230e1f3877d98dace30c5b24924fd0acff5d3864f18bce117ade111ed517947e2f56c4918b8cd5a5731e3dFile filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -85,7 +85,7 @@ The :mod:`!datetime` module exports the following constants: | ||
| .. data:: MINYEAR | ||
| The smallest year number allowed in a :class:`date` or :class:`.datetime` object. | ||
| :const:`MINYEAR` is ``1``. | ||
| :const:`MINYEAR` is 1. | ||
| .. data:: MAXYEAR | ||
| @@ -207,7 +207,7 @@ A :class:`timedelta` object represents a duration, the difference between two | ||
| .. class:: timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0) | ||
| All arguments are optional and default to ``0``. Arguments may be integers | ||
| All arguments are optional and default to 0. Arguments may be integers | ||
| or floats, and may be positive or negative. | ||
| Only *days*, *seconds* and *microseconds* are stored internally. | ||
| @@ -280,7 +280,7 @@ Class attributes: | ||
| The smallest possible difference between non-equal :class:`timedelta` objects, | ||
| ``timedelta(microseconds=1)``. | ||
| Note that, because of normalization, ``timedelta.max`` > ``-timedelta.min``. | ||
| Note that, because of normalization, ``timedelta.max`` is greater than ``-timedelta.min``. | ||
| ``-timedelta.max`` is not representable as a :class:`timedelta` object. | ||
| Instance attributes (read-only): | ||
| @@ -302,26 +302,27 @@ Supported operations: | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | Operation | Result | | ||
| +================================+===============================================+ | ||
| | ``t1 = t2 + t3`` | Sum of *t2* and *t3*. Afterwards *t1*-*t2* == | | ||
| | | *t3* and *t1*-*t3* == *t2* are true. (1) | | ||
| | ``t1 = t2 + t3`` | Sum of ``t2`` and ``t3``. | | ||
| | | Afterwards ``t1 - t2 == t3`` and | | ||
| | | ``t1 - t3 == t2`` are true. (1) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``t1 = t2 - t3`` | Difference of *t2* and *t3*. Afterwards *t1* | | ||
| | | == *t2* - *t3* and *t2* == *t1* + *t3* are | | ||
| | ``t1 = t2 - t3`` | Difference of ``t2`` and ``t3``. Afterwards | | ||
| | | ``t1 == t2 - t3`` and ``t2 == t1 + t3`` are | | ||
| | | true. (1)(6) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``t1 = t2 * i or t1 = i * t2`` | Delta multiplied by an integer. | | ||
| | | Afterwards *t1* // i == *t2* is true, | | ||
| | | Afterwards ``t1 // i == t2`` is true, | | ||
| | | provided ``i != 0``. | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | | In general, *t1* \* i == *t1* \* (i-1) + *t1* | | ||
| | | In general, ``t1 * i == t1 * (i-1) + t1`` | | ||
| | | is true. (1) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``t1 = t2 * f or t1 = f * t2`` | Delta multiplied by a float. The result is | | ||
| | | rounded to the nearest multiple of | | ||
| | | timedelta.resolution using round-half-to-even.| | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``f = t2 / t3`` | Division (3) of overall duration *t2* by | | ||
| | | interval unit *t3*. Returns a :class:`float`| | ||
| | ``f = t2 / t3`` | Division (3) of overall duration ``t2`` by | | ||
| | | interval unit ``t3``. Returns a :class:`float`| | ||
| | | object. | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``t1 = t2 / f or t1 = t2 / i`` | Delta divided by a float or an int. The result| | ||
erlend-aasland marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| @@ -343,13 +344,12 @@ Supported operations: | ||
| | ``+t1`` | Returns a :class:`timedelta` object with the | | ||
| | | same value. (2) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``-t1`` | equivalent to | | ||
| | | :class:`timedelta`\ (-*t1.days*, | | ||
| | | -*t1.seconds*, -*t1.microseconds*), | | ||
| | | and to *t1*\* -1. (1)(4) | | ||
| | ``-t1`` | Equivalent to ``timedelta(-t1.days, | | ||
| | | -t1.seconds*, -t1.microseconds)``, | | ||
| | | and to ``t1 * -1``. (1)(4) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``abs(t)`` | equivalent to +\ *t* when ``t.days >= 0``, | | ||
| | | and to -*t* when ``t.days < 0``. (2) | | ||
| | ``abs(t)`` | Equivalent to ``+t`` when ``t.days >= 0``, | | ||
| | | and to ``-t`` when ``t.days < 0``. (2) | | ||
| +--------------------------------+-----------------------------------------------+ | ||
| | ``str(t)`` | Returns a string in the form | | ||
| | | ``[D day[s], ][H]H:MM:SS[.UUUUUU]``, where D | | ||
| @@ -370,10 +370,10 @@ Notes: | ||
| This is exact and cannot overflow. | ||
| (3) | ||
| Division by 0 raises :exc:`ZeroDivisionError`. | ||
| Division by zero raises :exc:`ZeroDivisionError`. | ||
erlend-aasland marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| (4) | ||
| -*timedelta.max* is not representable as a :class:`timedelta` object. | ||
| ``-timedelta.max`` is not representable as a :class:`timedelta` object. | ||
| (5) | ||
| String representations of :class:`timedelta` objects are normalized | ||
| @@ -583,10 +583,10 @@ Supported operations: | ||
| +-------------------------------+----------------------------------------------+ | ||
| | Operation | Result | | ||
| +===============================+==============================================+ | ||
| | ``date2 = date1 + timedelta`` | *date2* will be ``timedelta.days`` days | | ||
| | | after *date1*. (1) | | ||
| | ``date2 = date1 + timedelta`` | ``date2`` will be ``timedelta.days`` days | | ||
| | | after ``date1``. (1) | | ||
| +-------------------------------+----------------------------------------------+ | ||
| | ``date2 = date1 - timedelta`` | Computes *date2* such that ``date2 + | | ||
| | ``date2 = date1 - timedelta`` | Computes ``date2`` such that ``date2 + | | ||
| | | timedelta == date1``. (2) | | ||
| +-------------------------------+----------------------------------------------+ | ||
| | ``timedelta = date1 - date2`` | \(3) | | ||
| @@ -613,8 +613,8 @@ Notes: | ||
| ``timedelta.seconds`` and ``timedelta.microseconds`` are ignored. | ||
| (3) | ||
| This is exact, and cannot overflow. timedelta.seconds and | ||
| timedelta.microseconds are 0, and date2 + timedelta == date1 after. | ||
| This is exact, and cannot overflow. ``timedelta.seconds`` and | ||
erlend-aasland marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| ``timedelta.microseconds`` are 0, and ``date2 + timedelta == date1`` after. | ||
| (4) | ||
| :class:`date` objects are equal if they represent the same date. | ||
| @@ -671,7 +671,7 @@ Instance methods: | ||
| time.struct_time((d.year, d.month, d.day, 0, 0, 0, d.weekday(), yday, -1)) | ||
| where ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` | ||
| is the day number within the current year starting with ``1`` for January 1st. | ||
| is the day number within the current year starting with 1 for January 1st. | ||
| .. method:: date.toordinal() | ||
| @@ -991,8 +991,8 @@ Other constructors, all class methods: | ||
| .. classmethod:: datetime.fromordinal(ordinal) | ||
| Return the :class:`.datetime` corresponding to the proleptic Gregorian ordinal, | ||
| where January 1 of year 1 has ordinal 1. :exc:`ValueError` is raised unless ``1 | ||
| <= ordinal <= datetime.max.toordinal()``. The hour, minute, second and | ||
| where January 1 of year 1 has ordinal 1. :exc:`ValueError` is raised unless | ||
| ``1 <= ordinal <= datetime.max.toordinal()``. The hour, minute, second and | ||
| microsecond of the result are all 0, and :attr:`.tzinfo` is ``None``. | ||
| @@ -1167,8 +1167,8 @@ Instance attributes (read-only): | ||
| In ``[0, 1]``. Used to disambiguate wall times during a repeated interval. (A | ||
| repeated interval occurs when clocks are rolled back at the end of daylight saving | ||
| time or when the UTC offset for the current zone is decreased for political reasons.) | ||
| The value 0 (1) represents the earlier (later) of the two moments with the same wall | ||
| time representation. | ||
| The values 0 and 1 represent, respectively, the earlier and later of the two | ||
| moments with the same wall time representation. | ||
| .. versionadded:: 3.6 | ||
| @@ -1193,16 +1193,16 @@ Supported operations: | ||
| +---------------------------------------+--------------------------------+ | ||
| (1) | ||
| datetime2 is a duration of timedelta removed from datetime1, moving forward in | ||
| time if ``timedelta.days`` > 0, or backward if ``timedelta.days`` < 0. The | ||
| ``datetime2`` is a duration of ``timedelta`` removed from ``datetime1``, moving forward in | ||
| time if ``timedelta.days > 0``, or backward if ``timedelta.days < 0``. The | ||
| result has the same :attr:`~.datetime.tzinfo` attribute as the input datetime, and | ||
| datetime2 - datetime1 == timedelta after. :exc:`OverflowError` is raised if | ||
| datetime2.year would be smaller than :const:`MINYEAR` or larger than | ||
| ``datetime2 - datetime1 == timedelta`` after. :exc:`OverflowError` is raised if | ||
| ``datetime2.year`` would be smaller than :const:`MINYEAR` or larger than | ||
| :const:`MAXYEAR`. Note that no time zone adjustments are done even if the | ||
| input is an aware object. | ||
| (2) | ||
| Computes the datetime2 such that datetime2 + timedelta == datetime1. As for | ||
| Computes the ``datetime2`` such that ``datetime2 + timedelta == datetime1``. As for | ||
| addition, the result has the same :attr:`~.datetime.tzinfo` attribute as the input | ||
| datetime, and no time zone adjustments are done even if the input is aware. | ||
| @@ -1387,12 +1387,12 @@ Instance methods: | ||
| d.weekday(), yday, dst)) | ||
| where ``yday = d.toordinal() - date(d.year, 1, 1).toordinal() + 1`` | ||
| is the day number within the current year starting with ``1`` for January | ||
| is the day number within the current year starting with 1 for January | ||
| 1st. The :attr:`~time.struct_time.tm_isdst` flag of the result is set according to the | ||
| :meth:`dst` method: :attr:`.tzinfo` is ``None`` or :meth:`dst` returns | ||
| ``None``, :attr:`!tm_isdst` is set to ``-1``; else if :meth:`dst` returns a | ||
| non-zero value, :attr:`!tm_isdst` is set to ``1``; else :attr:`!tm_isdst` is | ||
| set to ``0``. | ||
| non-zero value, :attr:`!tm_isdst` is set to 1; else :attr:`!tm_isdst` is | ||
| set to 0. | ||
| .. method:: datetime.utctimetuple() | ||
| @@ -1404,7 +1404,7 @@ Instance methods: | ||
| If *d* is aware, *d* is normalized to UTC time, by subtracting | ||
| ``d.utcoffset()``, and a :class:`time.struct_time` for the | ||
| normalized time is returned. :attr:`!tm_isdst` is forced to 0. Note | ||
| that an :exc:`OverflowError` may be raised if *d*.year was | ||
| that an :exc:`OverflowError` may be raised if ``d.year`` was | ||
serhiy-storchaka marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| ``MINYEAR`` or ``MAXYEAR`` and UTC adjustment spills over a year | ||
| boundary. | ||
| @@ -1735,7 +1735,7 @@ day, and subject to adjustment via a :class:`tzinfo` object. | ||
| * ``fold in [0, 1]``. | ||
| If an argument outside those ranges is given, :exc:`ValueError` is raised. All | ||
| default to ``0`` except *tzinfo*, which defaults to :const:`None`. | ||
erlend-aasland marked this conversation as resolved.
Uh oh!There was an error while loading. Please reload this page. | ||
| default to 0 except *tzinfo*, which defaults to :const:`None`. | ||
| Class attributes: | ||
| @@ -1790,8 +1790,8 @@ Instance attributes (read-only): | ||
| In ``[0, 1]``. Used to disambiguate wall times during a repeated interval. (A | ||
| repeated interval occurs when clocks are rolled back at the end of daylight saving | ||
| time or when the UTC offset for the current zone is decreased for political reasons.) | ||
| The value 0 (1) represents the earlier (later) of the two moments with the same wall | ||
| time representation. | ||
| The values 0 and 1 represent, respectively, the earlier and later of the two | ||
| moments with the same wall time representation. | ||
| .. versionadded:: 3.6 | ||
| @@ -2083,7 +2083,7 @@ Examples of working with a :class:`.time` object:: | ||
| ``tz.utcoffset(dt) - tz.dst(dt)`` | ||
| must return the same result for every :class:`.datetime` *dt* with ``dt.tzinfo == | ||
| tz`` For sane :class:`tzinfo` subclasses, this expression yields the time | ||
| tz``. For sane :class:`tzinfo` subclasses, this expression yields the time | ||
| zone's "standard offset", which should not depend on the date or the time, but | ||
| only on geographic location. The implementation of :meth:`datetime.astimezone` | ||
| relies on this, but cannot detect violations; it's the programmer's | ||
| @@ -2120,7 +2120,7 @@ Examples of working with a :class:`.time` object:: | ||
| Return the time zone name corresponding to the :class:`.datetime` object *dt*, as | ||
| a string. Nothing about string names is defined by the :mod:`!datetime` module, | ||
| and there's no requirement that it mean anything in particular. For example, | ||
| "GMT", "UTC", "-500", "-5:00", "EDT", "US/Eastern", "America/New York" are all | ||
| ``"GMT"``, ``"UTC"``, ``"-500"``, ``"-5:00"``, ``"EDT"``, ``"US/Eastern"``, ``"America/New York"`` are all | ||
| valid replies. Return ``None`` if a string name isn't known. Note that this is | ||
| a method rather than a fixed string primarily because some :class:`tzinfo` | ||
| subclasses will wish to return different names depending on the specific value | ||
| @@ -2561,11 +2561,11 @@ information, which are supported in ``datetime.strptime`` but are discarded by | ||
| For :class:`.time` objects, the format codes for year, month, and day should not | ||
| be used, as :class:`!time` objects have no such values. If they're used anyway, | ||
| ``1900`` is substituted for the year, and ``1`` for the month and day. | ||
| ``1900`` is substituted for the year, and 1 for the month and day. | ||
| For :class:`date` objects, the format codes for hours, minutes, seconds, and | ||
| microseconds should not be used, as :class:`date` objects have no such | ||
| values. If they're used anyway, ``0`` is substituted for them. | ||
| values. If they're used anyway, 0 is substituted for them. | ||
| For the same reason, handling of format strings containing Unicode code points | ||
| that can't be represented in the charset of the current locale is also | ||
Uh oh!
There was an error while loading. Please reload this page.