Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import timeit
- import numpy as np
- def test(ty, limit):
- def thing(n, m):
- x = ty('')
- hoisted = ty('a' * m)
- for _ in range(n):
- x += hoisted
- xvals = []
- yvals = []
- for x in range(0, limit, 500):
- y = timeit.timeit(lambda: thing(x, 1000), number=1000)
- print('%d: %r' % (x, y))
- xvals.append(x)
- yvals.append(y)
- return np.polyfit(xvals, yvals, 2)
- print(test(str, 10001))
- # [ 2.20105955e-09 6.90650409e-05 1.87324922e-02]
- print(test(bytes, 10001))
- # [ 2.94627114e-09 6.88720223e-05 1.36304238e-02]
- print(test(list, 4001))
- # [ 1.84068582e-06 -1.62578855e-03 2.01160158e+00]
- print(test(bytearray, 10001))
- # [ 2.89900130e-09 7.34388859e-05 2.80596315e-02]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement