Open In App

Python Program to Generate Random binary string

Last Updated : 17 Mar, 2023
Comments
Improve
Suggest changes
Like Article
Like
Report

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

Output
Random 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.


Practice Tags :

Similar Reads

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy