Convert binary to string using Python - GeeksforGeeks (2024)

Last Updated : 05 Dec, 2022

Summarize

Comments

Improve

Data conversion has always been widely used utility and one among them can be the conversion of a binary equivalent to its string.
Let’s discuss certain ways in which this can be done.

Method #1:
The naive approach is to convert the given binary data in decimal by taking the sum of binary digits (dn) times their power of 2*(2^n). The binary data is divided into sets of 7 bits because this set of binary as input, returns the corresponding decimal value which is ASCII code of the character of a string. This ASCII code is then converted to string using chr() function.
Note: Here we do slicing of binary data in the set of 7 because, the original ASCII table is encoded on 7 bits, therefore, it has 128 characters.

Python3

# Python3 code to demonstrate working of

# Converting binary to string

# Using BinarytoDecimal(binary)+chr()

# Defining BinarytoDecimal() function

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

return (decimal)

# Driver's code

# initializing binary data

bin_data ='10001111100101110010111010111110011'

# print binary data

print("The binary value is:", bin_data)

# initializing a empty string for

# storing the string data

str_data =' '

# slicing the input and converting it

# in decimal and then converting it in string

for i in range(0, len(bin_data), 7):

# slicing the bin_data from index range [0, 6]

# and storing it as integer in temp_data

temp_data = int(bin_data[i:i + 7])

# passing temp_data in BinarytoDecimal() function

# to get decimal value of corresponding temp_data

decimal_data = BinaryToDecimal(temp_data)

# Decoding the decimal value returned by

# BinarytoDecimal() function, using chr()

# function which return the string corresponding

# character for given ASCII value, and store it

# in str_data

str_data = str_data + chr(decimal_data)

# printing the result

print("The Binary value after string conversion is:",

str_data)

Output

The binary value is: 10001111100101110010111010111110011The Binary value after string conversion is: Geeks

Time Complexity: O(n)
Auxiliary Space: O(n)

Method #2: Using int() function
Whenever an int() function is provided with two arguments, it tells the int() function that the second argument is the base of the input string. If the input string is larger than 10, then Python assumes that the next sequence of digits comes from ABCD… .Therefore, this concept can be used for converting a binary sequence to string. Below is the implementation.

Python3

# Python3 code to demonstrate working of

# Converting binary to string

# Using BinarytoDecimal(binary)+chr()

# Defining BinarytoDecimal() function

def BinaryToDecimal(binary):

# Using int function to convert to

# string

string = int(binary, 2)

return string

# Driver's code

# initializing binary data

bin_data ='10001111100101110010111010111110011'

# print binary data

print("The binary value is:", bin_data)

# initializing a empty string for

# storing the string data

str_data =' '

# slicing the input and converting it

# in decimal and then converting it in string

for i in range(0, len(bin_data), 7):

# slicing the bin_data from index range [0, 6]

# and storing it in temp_data

temp_data = bin_data[i:i + 7]

# passing temp_data in BinarytoDecimal() function

# to get decimal value of corresponding temp_data

decimal_data = BinaryToDecimal(temp_data)

# Decoding the decimal value returned by

# BinarytoDecimal() function, using chr()

# function which return the string corresponding

# character for given ASCII value, and store it

# in str_data

str_data = str_data + chr(decimal_data)

# printing the result

print("The Binary value after string conversion is:",

str_data)

Output

The binary value is: 10001111100101110010111010111110011The Binary value after string conversion is: Geeks

Time Complexity: O(n)
Auxiliary Space: O(n)



Please Login to comment...

Convert binary to string using Python - GeeksforGeeks (2024)
Top Articles
Bitcoin Mining Efficiency: How J/TH Ratio Affects Your Bottom Line - D-Central
WSJ Prime Rate Forecast
Kem Minnick Playboy
Skycurve Replacement Mat
Promotional Code For Spades Royale
Busted Newspaper Zapata Tx
Instructional Resources
J & D E-Gitarre 905 HSS Bat Mark Goth Black bei uns günstig einkaufen
Frank Lloyd Wright, born 150 years ago, still fascinates
80 For Brady Showtimes Near Marcus Point Cinema
Wmu Course Offerings
Sam's Club Gas Price Hilliard
Missing 2023 Showtimes Near Lucas Cinemas Albertville
Jessica Renee Johnson Update 2023
Thotsbook Com
Google Flights Missoula
Water Days For Modesto Ca
Vigoro Mulch Safe For Dogs
Evil Dead Rise Showtimes Near Regal Sawgrass & Imax
Sussyclassroom
Pearson Correlation Coefficient
Sister Souljah Net Worth
Dei Ebill
Dove Cremation Services Topeka Ks
Marilyn Seipt Obituary
Maisons près d'une ville - Štanga - Location de vacances à proximité d'une ville - Štanga | Résultats 201
A Man Called Otto Showtimes Near Carolina Mall Cinema
24 Hour Drive Thru Car Wash Near Me
Lininii
King Soopers Cashiers Check
Grays Anatomy Wiki
Emiri's Adventures
Miss America Voy Board
T&J Agnes Theaters
Unity Webgl Player Drift Hunters
Jefferson Parish Dump Wall Blvd
Grapes And Hops Festival Jamestown Ny
Indiefoxx Deepfake
Quake Awakening Fragments
Greater Keene Men's Softball
Duff Tuff
Unifi Vlan Only Network
Blackwolf Run Pro Shop
The Banshees Of Inisherin Showtimes Near Reading Cinemas Town Square
Craigslist Freeport Illinois
Unitedhealthcare Community Plan Eye Doctors
Walmart 24 Hrs Pharmacy
Sky Dental Cartersville
Nfsd Web Portal
Chitterlings (Chitlins)
Psalm 46 New International Version
Cbs Scores Mlb
Latest Posts
Article information

Author: Velia Krajcik

Last Updated:

Views: 6236

Rating: 4.3 / 5 (54 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Velia Krajcik

Birthday: 1996-07-27

Address: 520 Balistreri Mount, South Armand, OR 60528

Phone: +466880739437

Job: Future Retail Associate

Hobby: Polo, Scouting, Worldbuilding, Cosplaying, Photography, Rowing, Nordic skating

Introduction: My name is Velia Krajcik, I am a handsome, clean, lucky, gleaming, magnificent, proud, glorious person who loves writing and wants to share my knowledge and understanding with you.