]> granicus.if.org Git - python/commitdiff
Add more detail to the Counter.fromkeys() comment block (GH-8124)
authorRaymond Hettinger <rhettinger@users.noreply.github.com>
Thu, 5 Jul 2018 23:36:24 +0000 (16:36 -0700)
committerGitHub <noreply@github.com>
Thu, 5 Jul 2018 23:36:24 +0000 (16:36 -0700)
Lib/collections/__init__.py

index 3109054e20c148e2312fe4b13f01702e7228c5d9..cd2d2bfc10731ca7122418af6381c990623ed8b0 100644 (file)
@@ -609,8 +609,13 @@ class Counter(dict):
 
     @classmethod
     def fromkeys(cls, iterable, v=None):
-        # There is no equivalent method for counters because setting v=1
-        # means that no element can have a count greater than one.
+        # There is no equivalent method for counters because the semantics
+        # would be ambiguous in cases such as Counter('aaabbc', v=2).
+        # Initializing counters to zero values isn't necessary because zero
+        # is already the default value for counter lookups.  Initializing
+        # to one is easily accomplished with Counter(set(iterable)).  For
+        # more exotic cases, create a dictionary first using a dictionary
+        # comprehension or dict.fromkeys().
         raise NotImplementedError(
             'Counter.fromkeys() is undefined.  Use Counter(iterable) instead.')