# [Tutor] How to convert an integer into a binary?

**Danny Yoo
**
dyoo@hkn.eecs.berkeley.edu

*Wed, 8 Aug 2001 00:13:39 -0700 (PDT)*

On Wed, 8 Aug 2001, Haiyang wrote:
>* How can I convert an interger into a binary code in Python?
*
Good question! By the way, going the other way around, from binary to an
integer, is very easy:
###
>>>* int('111001', 2)
*57
###
and might be useful later on.
[This message does NOT have an "answer" attached to it, but it gives hints
on one way to do the int->binary conversion.]
One thing to notice is that if a number is odd, then its binary (base-2)
representation will end with a '1'. Here are a few examples:
###
>>>* int('10101', 2)
*21 # is odd
>>>* int('1010', 2)
*10 # is even
>>>* int('101', 2)
*5 # is odd
>>>* int('10', 2)
*2 # is even
>>>* int('1', 2)
*1
###
So if you have some number, then it's really easy to know about the last
digit: just check to see if the number's even or odd. Knowing what the
rest of the digits look like might still be a mystery though.
The second thing that might be useful is to look again at the example
above, but this time staring at two things: the binary number itself, and
its integer equivalent:
integer binary
------- ------
21 10101
10 1010
5 101
2 10
1 1
Take a look at it, and see if you can spot a pattern. Here's another
interpreter example with a peculiar pattern:
###
>>>* int('100110', 2)
*38
>>>* int('10011', 2)
*19
>>>* int('1001', 2)
*9
>>>* int('100', 2)
*4
>>>* int('10', 2)
*2
>>>* int('1', 2)
*1
###
Forgive me: I'm being deliberately obscure here. *grin* If you're
impatient, please feel free to ask again, and one of us can reply with
some example code.
Good luck to you!