Do you even Refactor? 003
Ilya Nevolin
Posted on February 14, 2021
Code refactoring is crucial but often overlooked. It can improve the design and performance of existing code.
The Python code below takes about 14 seconds to complete. Refactor the getData
function to make it run in less than 10 seconds. Post your answer in the comments.
import time
def getData():
arr = []
for i in range(1000*1000*50):
arr.append(i)
lo, hi = 0, 0
for x in arr:
if x < lo:
lo = x
if x > hi:
hi = x
print(lo, hi)
return arr
def timed(func):
def run():
Tstart = time.time()
func()
Tend = time.time()
Tdt = round(Tend - Tstart, 2)
print(Tdt, 'seconds')
return run
@timed
def main():
data = getData()
print('len:', len(data), 'sum:', sum(data))
main()
💖 💪 🙅 🚩
Ilya Nevolin
Posted on February 14, 2021
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.