Python program to convert tuple into list by adding the given string after every element
Last Updated :
10 Apr, 2023
Given a Tuple. The task is to convert it to List by adding the given string after every element.
Examples:
Input : test_tup = (5, 6, 7), K = "Gfg"
Output : [5, 'Gfg', 6, 'Gfg', 7, 'Gfg']
Explanation : Added "Gfg" as succeeding element.
Input : test_tup = (5, 6), K = "Gfg"
Output : [5, 'Gfg', 6, 'Gfg']
Explanation : Added "Gfg" as succeeding element.
Method #1: Using list comprehension
In this, we construct a tuple of each element of tuple with a succeeding element and then run a nested loop to flatten each constructed tuple using list comprehension.
Python3
test_tup = ( 5 , 6 , 7 , 4 , 9 )
print ( "The original tuple is : " , test_tup)
K = "Gfg"
res = [ele for sub in test_tup for ele in (sub, K)]
print ( "Converted Tuple with K : " , res)
|
Output:
The original tuple is : (5, 6, 7, 4, 9)
Converted Tuple with K : [5, ‘Gfg’, 6, ‘Gfg’, 7, ‘Gfg’, 4, ‘Gfg’, 9, ‘Gfg’]
Time Complexity: O(n) where n is the number of elements in the tuple “test_tup”.
Auxiliary Space: O(n), where n is the number of elements in the new res list
Method #2 : Using chain.from_iterable() + list() + generator expression
This is similar to above method, difference is that nested loop is avoided by flattening using chain.from_iterable().
Python3
from itertools import chain
test_tup = ( 5 , 6 , 7 , 4 , 9 )
print ( "The original tuple is : " , test_tup)
K = "Gfg"
res = list (chain.from_iterable((ele, K) for ele in test_tup))
print ( "Converted Tuple with K : " , res)
|
Output:
The original tuple is : (5, 6, 7, 4, 9)
Converted Tuple with K : [5, ‘Gfg’, 6, ‘Gfg’, 7, ‘Gfg’, 4, ‘Gfg’, 9, ‘Gfg’]
Time Complexity: The time complexity of this program is O(n), where n is the length of the input tuple test_tup.
Auxiliary Space: The auxiliary space used by this program is O(n), where n is the length of the input tuple test_tup.
Method #3 : Using list(),map(),join(),split() methods
Python3
test_tup = ( 5 , 6 , 7 , 4 , 9 )
print ( "The original tuple is : " , test_tup)
K = "Gfg"
x = list ( map ( str , test_tup))
b = "*" + K + "*"
a = b.join(x)
c = a.split( "*" )
c.append(K)
res = []
for i in c:
if (i ! = K):
res.append( int (i))
else :
res.append(i)
print ( "Converted Tuple with K : " , res)
|
Output :
The original tuple is : (5, 6, 7, 4, 9)
Converted Tuple with K : [5, ‘Gfg’, 6, ‘Gfg’, 7, ‘Gfg’, 4, ‘Gfg’, 9, ‘Gfg’]
Method #4 : Using map() function
Python3
test_tup = ( 5 , 6 , 7 , 4 , 9 )
print ( "The original tuple is : " , test_tup)
K = "Gfg"
res = list ( map ( lambda x: [x, K], test_tup))
res = [j for i in res for j in i]
print ( "Converted Tuple with K : " , res)
|
Output
The original tuple is : (5, 6, 7, 4, 9)
Converted Tuple with K : [5, 'Gfg', 6, 'Gfg', 7, 'Gfg', 4, 'Gfg', 9, 'Gfg']
Time Complexity: O(n)
Auxiliary Space: O(n)
Method#5: Using Recursive method.
Algorithm:
- Define a function called tuple_to_list_with_k that takes a tuple and a value k as arguments.
- Check if the tuple is empty. If it is, return an empty list.
- Otherwise, create a new list by concatenating the first element of the tuple with k, then recursively call the function on the rest of the tuple, and concatenate the result with the new list.
- Return the list.
Python3
def tuple_to_list_with_k(tup, k):
if not tup:
return []
else :
return [tup[ 0 ], k] + tuple_to_list_with_k(tup[ 1 :], k)
test_tup = ( 5 , 6 , 7 , 4 , 9 )
print ( "The original tuple is : " , test_tup)
K = "Gfg"
res = tuple_to_list_with_k(test_tup,K)
print ( "Converted Tuple with K : " , res)
|
Output
The original tuple is : (5, 6, 7, 4, 9)
Converted Tuple with K : [5, 'Gfg', 6, 'Gfg', 7, 'Gfg', 4, 'Gfg', 9, 'Gfg']
Time complexity: O(n), where n is the length of the input tuple. This is because the function processes each element of the tuple exactly once.
Space complexity: O(n), where n is the length of the input tuple. This is because the function creates a new list to store the output, which can have up to 2n elements (each element of the input tuple is followed by k). Additionally, the function uses the call stack to handle recursive calls, which can have up to n levels of recursion.
Similar Reads
Python program to convert a list of strings with a delimiter to a list of tuple
Given a List containing strings with a particular delimiter. The task is to remove the delimiter and convert the string to the list of tuple. Examples: Input : test_list = ["1-2", "3-4-8-9"], K = "-" Output : [(1, 2), (3, 4, 8, 9)] Explanation : After splitting, 1-2 => (1, 2). Input : test_list =
7 min read
Python Program to Convert a List to String
In Python, converting a list to a string is a common operation. In this article, we will explore the several methods to convert a list into a string. The most common method to convert a list of strings into a single string is by using join() method. Let's take an example about how to do it. Using th
3 min read
Python - Convert case of elements in a list of strings
In Python, we often need to convert the case of elements in a list of strings for various reasons such as standardizing input or formatting text. Whether it's converting all characters to uppercase, lowercase, or even swapping cases. In this article, we'll explore several methods to convert the case
3 min read
Python program to Convert a list into a dictionary with index as key
We are given a list and our task is to convert it into a dictionary where each elementâs index in the list becomes the key and the element itself becomes the corresponding value. For example, if we have a list like: ['apple', 'banana', 'cherry'] then the output will be {0: 'apple', 1: 'banana', 2: '
2 min read
Convert List Of Tuples To Json String in Python
We have a list of tuples and our task is to convert the list of tuples into a JSON string in Python. In this article, we will see how we can convert a list of tuples to a JSON string in Python. Convert List Of Tuples To Json String in PythonBelow, are the methods of Convert List Of Tuples To Json St
3 min read
How To Convert Comma-Delimited String to a List In Python?
In Python, converting a comma-separated string to a list can be done by using various methods. In this article, we will check various methods to convert a comma-delimited string to a list in Python. Using str.split()The most straightforward and efficient way to convert a comma-delimited string to a
1 min read
Concatenate all Elements of a List into a String - Python
We are given a list of words and our task is to concatenate all the elements into a single string with spaces in between. For example, given the list: li = ['hello', 'geek', 'have', 'a', 'geeky', 'day'] after concatenation, the result will be: "hello geek have a geeky day". Using str.join()str.join(
3 min read
Convert list of strings to list of tuples in Python
Sometimes we deal with different types of data types and we require to inter-convert from one data type to another hence interconversion is always a useful tool to have knowledge. This article deals with the converse case. Let's discuss certain ways in which this can be done in Python. Method 1: Con
5 min read
Convert Each Item in the List to String using Python
Converting each item in a list to a string is a common task when working with data in Python. Whether we're dealing with numbers, booleans or other data types, turning everything into a string can help us format or display data properly. We can do this using various methods like loops, the map() fun
3 min read
Python - Append given number with every element of the list
In Python, lists are flexible data structures that allow us to store multiple values in a single variable. Often, we may encounter situations where we need to modify each element of a list by appending a given number to it. Given a list and a number, write a Python program to append the number with
5 min read