# Binary to decimal and vice-versa in python

• Difficulty Level : Easy
• Last Updated : 12 Aug, 2022

Write Python code for converting a decimal number to it’s binary equivalent and vice-versa.

Example:

```From decimal to binary
Input : 8
Output : 1 0 0 0

From binary to decimal
Input : 100
Output : 4```

Decimal to binary

```Keep calling conversion function with n/2  till n > 1,
later perform n % 1 to get MSB of converted binary number.
Example :- 7
1). 7/2 = Quotient = 3(greater than 1), Remainder = 1.
2). 3/2 = Quotient = 1(not greater than 1), Remainder = 1.
3). 1%2 = Remainder = 1.

## Python3

 `# Function to print binary number for the ` `# input decimal using recursion ` `def` `decimalToBinary(n): `   `    ``if``(n > ``1``): ` `        ``# divide with integral result ` `        ``# (discard remainder) ` `        ``decimalToBinary(n``/``/``2``) `   `    `  `    ``print``(n``%``2``, end``=``' '``)` `    `  `    `    `# Driver code ` `if` `__name__ ``=``=` `'__main__'``: ` `    ``decimalToBinary(``8``) ` `    ``print``(``"\n"``)` `    ``decimalToBinary(``18``) ` `    ``print``(``"\n"``)` `    ``decimalToBinary(``7``) ` `    ``print``(``"\n"``)`

Output:

```1 0 0 0
1 0 0 1 0
1 1 1 ```

Decimal to binary using bin():

## Python3

 `# Function to convert Decimal number` `# to Binary number`   `def` `decimalToBinary(n):` `    ``return` `bin``(n).replace(``"0b"``,"")`   `# Driver code` `if` `__name__ ``=``=` `'__main__'``:` `    ``print``(decimalToBinary(``8``))` `    ``print``(decimalToBinary(``18``))` `    ``print``(decimalToBinary(``7``))`

Output:

```1000
10010
111```

Binary to decimal

```Example -: 1011
1). Take modulo of given binary number with 10.
(1011 % 10 = 1)
2). Multiply rem with 2 raised to the power
it's position from right end.
(1 * 2^0)
Note that we start counting position with 0.
3). Add result with previously generated result.
decimal = decimal + (1 * 2^0)
4). Update binary number by dividing it by 10.
(1011 / 10 = 101)
5). Keep repeating upper steps till binary > 0.

Final Conversion -: (1 * 2^3) + (0 * 2^2) +
(1 * 2^1) + (1 * 2^0) = 11```

## Python3

 `# Function calculates the decimal equivalent ` `# to given binary number`   `def` `binaryToDecimal(binary):` `    `  `    ``binary1 ``=` `binary` `    ``decimal, i, n ``=` `0``, ``0``, ``0` `    ``while``(binary !``=` `0``):` `        ``dec ``=` `binary ``%` `10` `        ``decimal ``=` `decimal ``+` `dec ``*` `pow``(``2``, i)` `        ``binary ``=` `binary``/``/``10` `        ``i ``+``=` `1` `    ``print``(decimal)    ` `    `    `# Driver code` `if` `__name__ ``=``=` `'__main__'``:` `    ``binaryToDecimal(``100``)` `    ``binaryToDecimal(``101``)` `    ``binaryToDecimal(``1001``)`

Output:

```4
5
9```

Binary to decimal using int():

## Python3

 `# Function to convert Binary number` `# to Decimal number`   `def` `binaryToDecimal(n):` `    ``return` `int``(n,``2``)`     `# Driver code` `if` `__name__ ``=``=` `'__main__'``:` `    ``print``(binaryToDecimal(``'100'``))` `    ``print``(binaryToDecimal(``'101'``))` `    ``print``(binaryToDecimal(``'1001'``))`

Output:

```4
5
9```

## Python3

 `n ``=``4` `print``(``'{0:b}'``.``format``(n))`

Output

`100`

This article is contributed by Pushpanjali Chauhan. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.