<<
and **
works almost same when compare to time complexity, result can be seen,
pow
works faster when values are small then these but for large values it works slow
In [108]: %timeit pow(2, 2)
10000000 loops, best of 3: 127 ns per loop
In [104]: timeit 1<<2
10000000 loops, best of 3: 23.2 ns per loop
In [105]: timeit 2**2
10000000 loops, best of 3: 24.5 ns per loop
In [111]: %timeit 1<<10
10000000 loops, best of 3: 23.9 ns per loop
In [112]: %timeit 2**10
10000000 loops, best of 3: 23.5 ns per loop
In [113]: %timeit pow(2, 10)
10000000 loops, best of 3: 167 ns per loop
In [114]: %timeit 1<<10000
10000000 loops, best of 3: 23.5 ns per loop
In [115]: %timeit 2**10000
10000000 loops, best of 3: 23.9 ns per loop
In [116]: %timeit pow(2, 10000)
10000 loops, best of 3: 27.7 μs per loop
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…