Skip to content
Related Articles

Related Articles

Python | Convert String to N chunks tuple

View Discussion
Improve Article
Save Article
Like Article
  • Last Updated : 26 Nov, 2019

Sometimes, while working with Python Strings, we can have a problem in which we need to break a string to N sized chunks to a tuple. Let’s discuss certain ways in which this task can be performed.

Method #1 : Using list comprehension + tuple
This is one approach in which this task can be performed. In this, we just iterate the String and break the chunks of string and construct the tuple using tuple() in one liner.




# Python3 code to demonstrate working of
# Convert String to N chunks tuple
# Using list comprehension + tuple()
  
# initialize string
test_string = "ggggffffgggg"
  
# printing original string
print("The original string : " + str(test_string))
  
# initialize N 
N = 4
  
# Convert String to N chunks tuple
# Using list comprehension + tuple()
res = tuple(test_string[ i : i + N] for i in range(0, len(test_string), N))
  
# printing result
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
The combination of above functions can also be used to perform this task. In this, we perform the act of making chunks using zip() + iter(). And cummulate the result using join().




# Python3 code to demonstrate working of
# Convert String to N chunks tuple
# Using zip() + iter() + join()+ list comprehension
  
# initialize string
test_string = "ggggffffgggg"
  
# printing original string
print("The original string : " + str(test_string))
  
# initialize N 
N = 4
  
# Convert String to N chunks tuple
# Using zip() + iter() + join() + list comprehension
res = tuple([''.join(ele) for ele in zip(*[iter(test_string)] * N)])
  
# printing result
print("Chunked String into tuple : " + str(res))

Output :

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

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!