Python | Convert string to N chunks



Method # 1: Using List Comprehension + Tuple
This is one approach in which this task can be accomplished. In this we just iterate over the String, break up the chunks of the string, and create a tuple using tuple () in one liner.

# Python3 demo code
# Convert string to N chunks
# Using comprehension list + tuple ()

 
# initialize string

test_string = "ggggffffgggg"

 
# print the original line

print ( "The original string:" + str (test_string) )

 
# initialize N

N = 4

 
# Convert string to N chunks
# Using comprehension list + tuple ()

res = tuple (test_string [i: i + N] for i in range ( 0 , len (test_string), N))

 
#result print at

print ( "Chunked String into tuple: " + str (res))

Output:

 The original string: ggggffffgggg Chunked String into tuple: (`gggg`,` ffff`, `gggg`) 

Method # 2: Using zip () + iter () + join () + list comprehension
A combination of the above functions can also be used to accomplish this task. In this, we are going through the chunk creation process using zip () + iter (). And accumulate the result using join ().

Output:

 The original string: ggggffffgggg Chunked String into tuple: (`gggg`,` ffff`, `gggg`) 


# Python3 code to demonstrate how it works
# Convert string to N chunks
# Using zip () + iter () + join () + list comprehension

 
# initialize string

test_string = "ggggffffgggg"

 
# print original line

print ( "The original string:" + str (test_string))

  
# initialize N

N = 4

 
# Convert string in N chunks
# Using zip () + iter () + join () + list comprehension

res = tuple ([`` .join ( ele) for ele in zip ( * [ iter (test_string)] * N)] )

 
# print result

print ( " Chunked String into tuple: " + str (res))