check if bytes is all nulls
Arkadiusz Bulski
arek.bulski at gmail.com
Sun Apr 1 14:04:40 EDT 2018
Some interesting timeits:
In [7]: timeit('sum(x)==0', 'x=bytes(10)')
Out[7]: 0.30194770699927176
In [11]: timeit('x==bytes(10)', 'x=bytes(10)')
Out[11]: 0.2181608650007547
In [12]: timeit('x==z*10', 'x=bytes(10); z=bytes(1)')
Out[12]: 0.1092393600010837
In [13]: timeit('x==x2', 'x=bytes(10); z=bytes(1); x2=bytes(10)')
Out[13]: 0.05795672599924728
niedz., 1 kwi 2018 o 19:55 użytkownik Arkadiusz Bulski <
arek.bulski at gmail.com> napisał:
> What would be the most performance efficient way of checking if a bytes is
> all zeros? Currently its `key == b'\x00' * len(key)` however, because its
> Python 2/3 compatible:
>
> sum(key) == 0 is invalid
> key == bytes(len(key)) is invalid
>
> I already considered precomputing the rhs value.
> Length of key is unknown, could be few bytes, could be megabytes.
>
> --
> ~ Arkadiusz Bulski
>
--
~ Arkadiusz Bulski
More information about the Python-list
mailing list