Python - Alternate Strings Concatenation
Last Updated :
05 May, 2023
The problem of getting the concatenation of a list is quite generic and we might someday face the issue of getting the concatenation of alternate elements and get the list of 2 elements containing the concatenation of alternate elements. Let’s discuss certain ways in which this can be performed.
Method #1: Using list comprehension + list slicing + join()
List slicing clubbed with list comprehension can be used to perform this particular task. We can have list comprehension to get run the logic and list slicing can slice out the alternate character, concat by the join() function.
Python3
# Python3 code to demonstrate
# Alternate Strings Concatenation
# using list comprehension + list slicing
# initializing list
test_list = ["GFG", "is", "for", "Computer", "Science", "learning"]
# printing original list
print("The original list : " + str(test_list))
# using list comprehension + list slicing
# Alternate Strings Concatenation
res = [" ".join(test_list[i : : 2]) for i in range(len(test_list) //
(len(test_list)//2))]
# print result
print("The alternate elements concatenation list : " + str(res))
Output : The original list : ['GFG', 'is', 'for', 'Computer', 'Science', 'learning']
The alternate elements concatenation list : ['GFG for Science', 'is Computer learning']
Time Complexity: O(n*n), where n is the number of elements in the list “test_list”.
Auxiliary Space: O(n), where n is the number of elements in the list “test_list”.
Method #2: Using loop
This is the brute method to perform this particular task in which we have the concatenation of alternate elements in different element indices and then return the output list.
Python3
# Python3 code to demonstrate
# Alternate Strings Concatenation
# using loop
# initializing list
test_list = ["GFG", "is", " for", " Computer", " Science", " learning"]
# printing original list
print("The original list : " + str(test_list))
# using loop
# Alternate Strings Concatenation
res = ["", ""]
for i in range(0, len(test_list)):
if(i % 2):
res[1] += test_list[i]
else :
res[0] += test_list[i]
# print result
print("The alternate elements concatenation list : " + str(res))
Output : The original list : ['GFG', 'is', 'for', 'Computer', 'Science', 'learning']
The alternate elements concatenation list : ['GFG for Science', 'is Computer learning']
Time Complexity: O(n)
Auxiliary Space: O(n)
Method 3: use the zip() function with tuple unpacking and string concatenation.
Steps:
- Initialize the original list.
- Use the zip() function with tuple unpacking to create two new lists containing the even-indexed and odd-indexed elements of the original list.
- Join the elements in each list into two strings using string concatenation.
- Append the two strings into a result list.
- Print the result list.
Python3
# Python3 code to demonstrate
# Alternate Strings Concatenation
# using zip()
# initializing list
test_list = ["GFG", "is", " for", " Computer", " Science", " learning"]
# printing original list
print("The original list : " + str(test_list))
# Alternate Strings Concatenation
# using zip() function
even_list, odd_list = zip(*[(test_list[i], test_list[i+1])
for i in range(0, len(test_list)-1, 2)])
res = [''.join(even_list), ''.join(odd_list)]
# Printing the result
print("The alternate elements concatenation list : " + str(res))
OutputThe original list : ['GFG', 'is', ' for', ' Computer', ' Science', ' learning']
The alternate elements concatenation list : ['GFG for Science', 'is Computer learning']
Time complexity: O(n), where n is the length of the original list.
Auxiliary space: O(n), as we create two new lists containing the even-indexed and odd-indexed elements of the original list.
Similar Reads
Python | Alternate vowels and consonants in String Sometimes, while working with Strings in Python, we can have a problem in which we may need restructure a string, adding alternate vowels and consonants in it. This is a popular school-level problem and having solution to this can be useful. Let's discuss certain ways in which this problem can be so
7 min read
Python - String Matrix Concatenation Sometimes, while working with Matrix we can have a problem in which we have Strings and we need a universal concatenation of all the String present in it. Let's discuss certain ways in which this task can be performed. Method #1 : Using list comprehension + join() We can solve this problem using lis
4 min read
Python - Concatenate Random characters in String List Given a String list, perform concatenation of random characters. Input : test_list = ["Gfg", "is", "Best", "for", "Geeks"] Output : "GiBfe" Explanation : Random elements selected, e.g G from Gfg, etc.Input : test_list = ["Gfg", "is", "Best"] Output : "fst" Explanation : Random elements selected, e.g
6 min read
String Interning in Python String interning is a memory optimization technique used in Python to enhance the efficiency of string handling. In Python, strings are immutable, meaning their values cannot be changed after creation. String interning, or interning strings, involves reusing existing string objects rather than creat
2 min read
Python - Triple quote String concatenation Sometimes, while working with Python Strings, we can have a problem in which we need to perform concatenation of Strings which are constructed by Triple quotes. This happens in cases we have multiline strings. This can have applications in many domains. Let us discuss certain ways in which this task
4 min read
Python - Substring concatenation by Separator Sometimes, while working with Python Lists, we can have problem in which we need to perform the concatenation of strings in a list till the separator. This can have application in domains in which we need chunked data. Lets discuss certain ways in which this task can be performed. Method #1 : Using
5 min read