Python Program to Generate Random binary string
Last Updated :
17 Mar, 2023
Given a number n, the task is to generate a random binary string of length n.
Examples:
Input: 7
Output: Desired length of random binary string is: 1000001
Input: 5
Output: Desired length of random binary string is: 01001
Approach
- Initialize an empty string, say key
- Generate a randomly either "0" or "1" using randint function from random package.
- Append the randomly generated "0" or "1" to the string, key
- Repeat step 2 and 3 for the desired length of the string
Below is the implementation.
Python3
# Python program for random
# binary string generation
import random
# Function to create the
# random binary string
def rand_key(p):
# Variable to store the
# string
key1 = ""
# Loop to find the string
# of desired length
for i in range(p):
# randint function to generate
# 0, 1 randomly and converting
# the result into str
temp = str(random.randint(0, 1))
# Concatenation the random 0, 1
# to the final result
key1 += temp
return(key1)
# Driver Code
n = 7
str1 = rand_key(n)
print("Desired length random binary string is: ", str1)
Output:
Desired length random binary string is: 1000001
The Time and Space Complexity for all the methods are the same:
Time Complexity: O(n)
Auxiliary Space: O(n)
Using random.getrandbits():
Python3
import random
def generate_binary_string(n):
# Generate a random number with n bits
number = random.getrandbits(n)
# Convert the number to binary
binary_string = format(number, '0b')
return binary_string
# Test the function
n = 7
print("Random binary string of length {}: {}".format(n, generate_binary_string(n)))
#This code is contributed by Edula Vinay Kumar Reddy
OutputRandom binary string of length 7: 1010000
Explanation:
The random.getrandbits(n) function generates a random number with n bits.
The format() function is used to convert the number to binary format. The format string '0b' specifies that the output should be in binary form.
Time Complexity: O(n), where n is the number of bits in the binary string.
Auxiliary Space: O(n), where n is the number of bits in the binary string. This is the space required to store the binary string.
Explore
Python Fundamentals
Python Data Structures
Advanced Python
Data Science with Python
Web Development with Python
Python Practice