Just some interesting applications of the bitwise and (&), or (|) operators. You might find some other uses.

```
''' bitwise_and_or.py
some interesting applications of bitwise and (&), or (|)
tested with Python27 by vegaseat 19apr2015
'''
def is_odd(n):
'''
symbol & is the bitwise 'and' operator
use n & 1 to check if n is odd or even
return True if n is an odd integer, else False
'''
if n & 1:
return True
else:
return False
def next_odd(n):
'''
symbol | is the bitwise 'or' operator
use n | 1 to turn an even integer into its next odd integer
does not change odd integers
'''
return n|1
# testing ...
print(is_odd(21)) # True
print(is_odd(22)) # False
print(next_odd(8)) # 9
print(next_odd(7)) # 7
```

About the Author

vegaseat 1,735