[docs] [issue23006] Improve the doc and indexing of adict.__missing__.

Terry J. Reedy report at bugs.python.org
Sun Dec 7 21:49:30 CET 2014


New submission from Terry J. Reedy:

Currently, the only index entry for __missing__ is  "__missing__() (collections.defaultdict method)".  This entry should probably not exist -- see #9536, which inspired this issue.  The method is not mentioned in the special-methods doc, and the explanation in the dict doc is not indexed.  Two suggestions:

https://docs.python.org/3/reference/datamodel.html#emulating-container-types

After __getitem__ entry, add automatically indexed entry, something like 

object.__missing__(self, key):
   When present in a dict subclass, called by dict.__getitem__ for missing keys.

https://docs.python.org/3/library/stdtypes.html#mapping-types-dict

Before the d[key] paragraph starting "If a subclass of dict defines a method __missing__()" add explicit __missing__ index directive.  The last sentence of the paragraph

"See collections.Counter for a complete implementation including other methods helpful for accumulating and managing tallies."

is confusing because the linked entry makes no mention of __missing__ (as it should not).  Change sentence to something like

"There are two stdlib dict subclasses that use (different) __missing__ methods as part of their implementation: collections.Counter and collections.defaultdict."

I will work on a patch and try to get the markup correct.

----------
assignee: docs at python
components: Documentation
messages: 232279
nosy: docs at python, terry.reedy
priority: normal
severity: normal
stage: needs patch
status: open
title: Improve the doc and indexing of adict.__missing__.
type: behavior
versions: Python 2.7, Python 3.4, Python 3.5

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue23006>
_______________________________________


More information about the docs mailing list