def func1():
global a2
global b
i = 0
for x, y in map(None, a2[0:2], a2):
i = i + 1
if x == y:
continue
else:
for newLine in b:
a2.insert(i-1, newLine)
i = i+1
break
return a2
def func2():
global a2
global b
a2 = a2[:2] + b + a2[2:]
return a2
def func3():
global a2
global b
a2[2:2] = b
return a2
def func4():
global a2
global b
a2.reverse()
b.reverse()
for i in b:
a2.insert(-2, i)
return a2
import timeit
a2 = ['a1' for _ in range(100000)]
b = ['a2' for i in range(1000)]
print timeit.timeit(func1,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func2,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func3,number=10,setup = 'from __main__ import a2,b')
print timeit.timeit(func4,number=10,setup = 'from __main__ import a2,b')
ZGVmIGZ1bmMxKCk6CglnbG9iYWwgYTIKCWdsb2JhbCBiCglpID0gMAoJZm9yIHgsIHkgaW4gbWFwKE5vbmUsIGEyWzA6Ml0sIGEyKToKCQlpID0gaSArIDEKCQlpZiB4ID09IHk6CgkJCWNvbnRpbnVlCgkJZWxzZToKCQkJZm9yIG5ld0xpbmUgaW4gYjoKCQkJCWEyLmluc2VydChpLTEsIG5ld0xpbmUpCgkJCQlpID0gaSsxCgkJCWJyZWFrCglyZXR1cm4gYTIKCQoJCmRlZiBmdW5jMigpOgoJZ2xvYmFsIGEyCglnbG9iYWwgYgoJYTIgPSBhMls6Ml0gKyBiICsgYTJbMjpdCglyZXR1cm4gYTIKCQpkZWYgZnVuYzMoKToKCWdsb2JhbCBhMgoJZ2xvYmFsIGIKCWEyWzI6Ml0gPSBiCglyZXR1cm4gYTIKCmRlZiBmdW5jNCgpOgoJZ2xvYmFsIGEyCglnbG9iYWwgYgoJYTIucmV2ZXJzZSgpCgliLnJldmVyc2UoKQoJZm9yIGkgaW4gYjoKCQlhMi5pbnNlcnQoLTIsIGkpCglyZXR1cm4gYTIKCQppbXBvcnQgdGltZWl0CgphMiA9IFsnYTEnIGZvciBfIGluIHJhbmdlKDEwMDAwMCldCmIgPSBbJ2EyJyBmb3IgaSBpbiByYW5nZSgxMDAwKV0KCnByaW50IHRpbWVpdC50aW1laXQoZnVuYzEsbnVtYmVyPTEwLHNldHVwID0gJ2Zyb20gX19tYWluX18gaW1wb3J0IGEyLGInKQpwcmludCB0aW1laXQudGltZWl0KGZ1bmMyLG51bWJlcj0xMCxzZXR1cCA9ICdmcm9tIF9fbWFpbl9fIGltcG9ydCBhMixiJykKcHJpbnQgdGltZWl0LnRpbWVpdChmdW5jMyxudW1iZXI9MTAsc2V0dXAgPSAnZnJvbSBfX21haW5fXyBpbXBvcnQgYTIsYicpCnByaW50IHRpbWVpdC50aW1laXQoZnVuYzQsbnVtYmVyPTEwLHNldHVwID0gJ2Zyb20gX19tYWluX18gaW1wb3J0IGEyLGInKQ==