Staging
v0.5.1
https://github.com/python/cpython
Revision 446e168202b4912a670187ada0ee80eecdf37b37 authored by Guido van Rossum on 11 September 2016, 01:54:14 UTC, committed by Guido van Rossum on 11 September 2016, 01:54:14 UTC
1 parent f7f8299
Raw File
Tip revision: 446e168202b4912a670187ada0ee80eecdf37b37 authored by Guido van Rossum on 11 September 2016, 01:54:14 UTC
Issue #26141: Update docs for typing.py. Ivan Levkivskyi.
Tip revision: 446e168
reperf.py
import re
import time

def main():
    s = "\13hello\14 \13world\14 " * 1000
    p = re.compile(r"([\13\14])")
    timefunc(10, p.sub, "", s)
    timefunc(10, p.split, s)
    timefunc(10, p.findall, s)

def timefunc(n, func, *args, **kw):
    t0 = time.perf_counter()
    try:
        for i in range(n):
            result = func(*args, **kw)
        return result
    finally:
        t1 = time.perf_counter()
        if n > 1:
            print(n, "times", end=' ')
        print(func.__name__, "%.3f" % (t1-t0), "CPU seconds")

main()
back to top