python 中x%2 x&1 判断偶数奇数 性能对比
本文使用非常好用的python交互解释器ipython操作演示,
使用命令pip install ipython安装,输入ipython即可。比python自带的好用。
python中有两种方法判断一个数是不是偶数或者奇数:- In [29]: 3&1
- Out[29]: 1
-
- In [30]: 3%2
- Out[30]: 1
-
- In [31]: 4&1
- Out[31]: 0
-
- In [32]: 4%2
- Out[32]: 0
复制代码 性能肯定是&1更高嘛,实际当中感觉差不多,简单写两个函数测试一下
二进制与操作&1判断偶奇数:- def testand(x):
- for r in range(1,x):
- if r&1:
- pass
复制代码 %2求余判断偶奇数:- def testmod(x):
- for r in range(1,x):
- if r%2:
- pass
复制代码 用ipython自带的timeit功能测试:- In [19]: %timeit testmod(100000)
- 100 loops, best of 3: 12.9 ms per loop
-
- In [20]: %timeit testand(100000)
- 100 loops, best of 3: 10.8 ms per loop
-
- In [21]: %timeit testand(1000000)
- 10 loops, best of 3: 109 ms per loop
-
- In [22]: %timeit testmod(1000000)
- 10 loops, best of 3: 129 ms per loop
复制代码 对我来说,感觉差距不大。
2016年10月9日 13:46:36 codegay |