Friday, December 27, 2024
Google search engine
HomeLanguagesPython | Convert String to N chunks tuple

Python | Convert String to N chunks tuple

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




# 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')

Time Complexity: O(n), where n is the length of string
Auxiliary Space: O(n)

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 cumulate the result using join(). 

Python3




# 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')

Time Complexity: O(n), where n is the length of the string
Auxiliary Space: O(n)

Dominic Rubhabha-Wardslaus
Dominic Rubhabha-Wardslaushttp://wardslaus.com
infosec,malicious & dos attacks generator, boot rom exploit philanthropist , wild hacker , game developer,
RELATED ARTICLES

Most Popular

Recent Comments