In the previous article, we have discussed Python Program to Check Evil Number or Not
Given a string and the task is to divide the given string into “N” equal parts.
Examples:
Example1:
Input:
Given string = "aaaabbbbccccddddeeee"
Output:
The given string after dividing into 5 equal halves: aaaa bbbb cccc dddd eeee
Example2:
Input:
Given string = "hellobtechgeeks"
Output:
The given string cannot be divided into 4 equal halves
Program to Divide a String in ‘N’ Equal Parts
Below are the ways to divide the given string into “N” equal parts.
Method #1: Using For Loop (Static Input)
Approach:
- Give the string as static input and store it in a variable.
- Give the number say ‘n’ as static input and store it in another variable.
- Calculate the len of the given string using the len() function and store it in another variable.
- Check if the length of the string modulus given number is not equal to ‘0’ or not using the if conditional statement.
- If the statement is true, print “The given string cannot be divided into n equal halves”.
- Else loop from 0 to length of the string with the step size of given number ‘n’ using the for loop.
- Slice from the iterator value to the iterator +n value using slicing and print them.
- The Exit of the Program.
Below is the implementation:
# Give the string as static input and store it in a variable. gvn_str = "aaaabbbbccccddddeeee" # Give the number say 'n' as static input and store it in another variable. num = 5 # Calculate the len of the given string using the len() function and store it # in another variable. len_str = len(gvn_str) # Divide the length of the string by a given number and store it in another variable say 'k'. k = len_str//num # Check if the length of the string modulus given number is not equal to '0' or # not using the if conditional statement. if(len_str % num != 0): # If the statement is true, print "The given string cannot be divided into n equal halves". print("The given string cannot be divided into", num, "equal halves") else: # Else loop from 0 to length of the string with the step size of the number 'k' # using the for loop. print("The given string after dividing into", num, "equal halves:") for i in range(0, len_str, k): # Slice from the iterator value to the iterator +n value using slicing and # print them. print(gvn_str[i:i+k])
Output:
The given string after dividing into 5 equal halves: aaaa bbbb cccc dddd eeee
Method #2: Using For Loop (User Input)
Approach:
- Give the string as user input using the input() function and store it in a variable.
- Give the number say ‘n’ as static input and store it in another variable.
- Calculate the len of the given string using the len() function and store it in another variable.
- Divide the length of the string by a given number and store it in another variable say ‘k’.
- Check if the length of the string modulus given number is not equal to ‘0’ or not using the if conditional statement.
- If the statement is true, print “The given string cannot be divided into n equal halves”.
- Else loop from 0 to length of the string with the step size of the number ‘k’ using the for loop.
- Slice from the iterator value to the iterator +k value using slicing and print them.
- The Exit of the Program.
Below is the implementation:
# Give the string as user input using the input() function and store it in a variable. gvn_str = input("Enter some random string = ") # Give the number say 'n' as user input using int(input()) and store it in another variable. num = int(input("Enter some random number = ")) # Calculate the len of the given string using the len() function and store it # in another variable. len_str = len(gvn_str) #Divide the length of the string by a given number and store it in another variable say 'k'. k=len_str//num # Check if the length of the string modulus given number is not equal to '0' or # not using the if conditional statement. if(len_str % num != 0): # If the statement is true, print "The given string cannot be divided into n equal halves". print("The given string cannot be divided into", num, "equal halves") else: # Else loop from 0 to length of the string with the step size of the number 'k' # using the for loop. print("The given string after dividing into", num, "equal halves:") for i in range(0, len_str, k): # Slice from the iterator value to the iterator +n value using slicing and # print them. print(gvn_str[i:i+k])
Output:
Enter some random string = 1234567890 Enter some random number = 2 The given string after dividing into 2 equal halves: 12345 67890
Explore more instances related to python concepts from Python Programming Examples Guide and get promoted from beginner to professional programmer level in Python Programming Language.