Commit 336c9458 authored by Ville Skyttä's avatar Ville Skyttä Committed by Ivan Levkivskyi

bpo-34336: Don't promote possibility to leave out typing.Optional (#8677)

parent 87e59ac1
......@@ -990,10 +990,18 @@ The module defines the following classes, functions and decorators:
Note that this is not the same concept as an optional argument,
which is one that has a default. An optional argument with a
default needn't use the ``Optional`` qualifier on its type
annotation (although it is inferred if the default is ``None``).
A mandatory argument may still have an ``Optional`` type if an
explicit value of ``None`` is allowed.
default does not require the ``Optional`` qualifier on its type
annotation just because it is optional. For example::
def foo(arg: int = 0) -> None:
...
On the other hand, if an explicit value of ``None`` is allowed, the
use of ``Optional`` is appropriate, whether the argument is optional
or not. For example::
def foo(arg: Optional[int] = None) -> None:
...
.. data:: Tuple
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment