mirror of https://github.com/python/cpython
gh-92546: Move pprint benchmark into pyperformance (GH-94613)
This PR couples with https://github.com/python/pyperformance/pull/222 and supersedes https://github.com/python/cpython/pull/92560. Inspired by https://github.com/python/cpython/issues/93096#issuecomment-1134576471. Automerge-Triggered-By: GH:ericsnowcurrently
This commit is contained in:
parent
4e704d7847
commit
c5140945c7
|
@ -637,19 +637,6 @@ def _recursion(object):
|
||||||
% (type(object).__name__, id(object)))
|
% (type(object).__name__, id(object)))
|
||||||
|
|
||||||
|
|
||||||
def _perfcheck(object=None):
|
|
||||||
import time
|
|
||||||
if object is None:
|
|
||||||
object = [("string", (1, 2), [3, 4], {5: 6, 7: 8})] * 100000
|
|
||||||
p = PrettyPrinter()
|
|
||||||
t1 = time.perf_counter()
|
|
||||||
p._safe_repr(object, {}, None, 0, True)
|
|
||||||
t2 = time.perf_counter()
|
|
||||||
p.pformat(object)
|
|
||||||
t3 = time.perf_counter()
|
|
||||||
print("_safe_repr:", t2 - t1)
|
|
||||||
print("pformat:", t3 - t2)
|
|
||||||
|
|
||||||
def _wrap_bytes_repr(object, width, allowance):
|
def _wrap_bytes_repr(object, width, allowance):
|
||||||
current = b''
|
current = b''
|
||||||
last = len(object) // 4 * 4
|
last = len(object) // 4 * 4
|
||||||
|
@ -666,6 +653,3 @@ def _wrap_bytes_repr(object, width, allowance):
|
||||||
current = candidate
|
current = candidate
|
||||||
if current:
|
if current:
|
||||||
yield repr(current)
|
yield repr(current)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
_perfcheck()
|
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
An undocumented ``python -m pprint`` benchmark is moved into ``pprint``
|
||||||
|
suite of pyperformance. Patch by Oleg Iarygin.
|
Loading…
Reference in New Issue