# Python program to convert binary to ASCII

• Last Updated : 31 Aug, 2021

In this article, we are going to see the conversion of Binary to ASCII in the Python programming language. There are multiple approaches by which this conversion can be performed that are illustrated below:

## Method 1: By using binascii module

Binascii helps convert between binary and various ASCII-encoded binary representations.

Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

b2a_uu() function: Here the “uu” stands for “UNIX-to-UNIX encoding” which takes care of the data conversion from strings to binary and ASCII values according to the specified program.

The b2a_uu() function is used to convert the specified binary string to its corresponding ASCII equivalent.

Syntax: b2a_uu(Text)

Parameter: This function accepts a single parameter which is illustrated below:

• Text: This is the specified binary string that is going to be converted into its ASCII equivalent.

Return Values: This function returns the ASCII equivalent.

## Python3

 `# Python program to illustrate the``# conversion of Binary to ASCII`` ` `# Importing binascii module``import` `binascii`` ` `# Initializing a binary string``Text ``=` `b``"GFG is a CS Portal"`` ` `# Calling the b2a_uu() function to``# Convert the binary string to ascii``Ascii ``=` `binascii.b2a_uu(Text)`` ` `# Getting the ASCII equivalent``print``(Ascii)`

Output:

`b"21T9'(&ES(&\$@0U,@4&]R=&%L\n"`

## Method 2: Using Built-in Types.

Here we will use a built-in type to convert binary to ASCII value.

Firstly, call int(binary_sting, base) with the base as 2 indicating the binary string. and then call int.to_bytes(byte_number, byte_order) function, where byte_order is taken as “big” and byte_number is taken as the number of bytes that binary_int occupies to return an array of bytes. This byte_number can be found using the operation binary_int.bit_length() + 7 // 8. And then call array.decode operation to turn the array into ASCII text.

## Python3

 `# Python program to illustrate the``# conversion of Binary to ASCII`` ` `# Initializing a binary string in the form of``# 0 and 1, with base of 2``binary_int ``=` `int``(``"11000010110001001100011"``, ``2``);`` ` `# Getting the byte number``byte_number ``=` `binary_int.bit_length() ``+` `7` `/``/` `8`` ` `# Getting an array of bytes``binary_array ``=` `binary_int.to_bytes(byte_number, ``"big"``)`` ` `# Converting the array into ASCII text``ascii_text ``=` `binary_array.decode()`` ` `# Getting the ASCII value``print``(ascii_text)`

Output:

`abc`

My Personal Notes arrow_drop_up