]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.9] Minor improvements to the convolve() recipe (GH-24520)
authorPablo Galindo <Pablogsal@gmail.com>
Mon, 15 Feb 2021 23:02:41 +0000 (23:02 +0000)
committerGitHub <noreply@github.com>
Mon, 15 Feb 2021 23:02:41 +0000 (23:02 +0000)
Doc/library/itertools.rst
Doc/tools/susp-ignored.csv

index ff5b60d70ff4ede864512a2cb916cea348bef1ef..6da55f8a3f49cf08ffdc3ac64037325b58e8e30f 100644 (file)
@@ -774,9 +774,9 @@ which incur interpreter overhead.
        # convolve(data, [0.25, 0.25, 0.25, 0.25]) --> Moving average (blur)
        # convolve(data, [1, -1]) --> 1st finite difference (1st derivative)
        # convolve(data, [1, -2, 1]) --> 2nd finite difference (2nd derivative)
-       kernel = list(reversed(kernel))
+       kernel = tuple(kernel)[::-1]
        n = len(kernel)
-       window = collections.deque([0] * n, maxlen=n)
+       window = collections.deque([0], maxlen=n) * n
        for x in chain(signal, repeat(0, n-1)):
            window.append(x)
            yield sum(map(operator.mul, kernel, window))
index c9777c6be9334d03cb282eb49e2b454b698d18ba..9f0c42a9bb5abc9dc21ee7b9389ec6c7b5c15f2c 100644 (file)
@@ -171,6 +171,7 @@ library/ipaddress,,:db00,2001:db00::0/ffff:ff00::
 library/ipaddress,,::,2001:db00::0/ffff:ff00::
 library/itertools,,:step,elements from seq[start:stop:step]
 library/itertools,,:stop,elements from seq[start:stop:step]
+library/itertools,,::,kernel = tuple(kernel)[::-1]
 library/logging.handlers,,:port,host:port
 library/mmap,,:i2,obj[i1:i2]
 library/multiprocessing,,`,# Add more tasks using `put()`