summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2018-06-16 03:50:28 (GMT)
committerGitHub <noreply@github.com>2018-06-16 03:50:28 (GMT)
commit2636833e8e9cb16ba3ae7bf776bbfc91f176367c (patch)
tree31cf82433bafa515602fe3c987771a40b97aa549
parent9c6fe387e217c43465ec7ffb0197c47d00bafb28 (diff)
downloadcpython-2636833e8e9cb16ba3ae7bf776bbfc91f176367c.zip
cpython-2636833e8e9cb16ba3ae7bf776bbfc91f176367c.tar.gz
cpython-2636833e8e9cb16ba3ae7bf776bbfc91f176367c.tar.bz2
bpo-33836: Recommend keyword-only param for memoization in FAQ (GH-7687)
Update the the signature in the code example to make `_cache` a keyword-only parameter. (cherry picked from commit 2707e41a5c7ede30349cc7dbd66f8be564965d7c) Co-authored-by: Noah Haasis <haasis_noah@yahoo.de>
-rw-r--r--Doc/faq/programming.rst4
1 files changed, 2 insertions, 2 deletions
diff --git a/Doc/faq/programming.rst b/Doc/faq/programming.rst
index 7476ce1..b717ab8 100644
--- a/Doc/faq/programming.rst
+++ b/Doc/faq/programming.rst
@@ -371,8 +371,8 @@ compute, a common technique is to cache the parameters and the resulting value
of each call to the function, and return the cached value if the same value is
requested again. This is called "memoizing", and can be implemented like this::
- # Callers will never provide a third parameter for this function.
- def expensive(arg1, arg2, _cache={}):
+ # Callers can only provide two parameters and optionally pass _cache by keyword
+ def expensive(arg1, arg2, *, _cache={}):
if (arg1, arg2) in _cache:
return _cache[(arg1, arg2)]