The join() method is used to join separator items to the input string. It accepts as parameters iterables such as collection, list, tuple, string, etc., and another string.
The join() function returns a string that joins the iterable elements to the separator string passed on to the function as an argument.
The syntax of the method is: str.join(sequence)
Key Points :
• Every string will concatenate flexibly with this join() method.
• This function would concatenate any single element of an iterable (such as an array, tuple, dictionary, array, etc.) with a string and results in a concatenated string.
• When there is a non-string is an iterable, the exception to TypeError raise.
• The method used to return the string in which the sequence elements join with the string separator is Python String join().
We’ll be covering the following topics in this tutorial:
Parameters for the join() method
The join() method uses an iterable parameter (objects that can return their members one by one).
Some of the example of iterables are:
• Native data types – List, Tuple, String, Dictionary and Set.
Python String join(): Return Value
• If there are non-string values in an iterable, the exception for TypeError is raised.
• If a dictionary is used as an iterable, the values retrieved are the keys and not the values.
• If there are string values returned as a result in an iterable concatenated string.
Below is the python program to demonstrate the join() function:
str = " - "; seq = ("Computer", "Notes"); # This is sequence of strings. print (str.join( seq ))
When we run above the program, the outcome is as follows:
Computer – Notes
The join() method with sets
# .join() with sets str= {'2', '1', '3'} s = ', ' print(s.join(str)) test = {'Beta', 'Alpha', 'Gamma'} s = '-' print(s.join(str))
When we run above the program, the outcome is as follows:
1, 2, 3
1-2-3
Python String join() when Set is used as an iterable
In the following python script, we tried to use the join() function with a set (a list of unordered and unindexed elements) as an iterable:
str = {'10', '20', '30'} sep = ', ' print(sep.join(str))
When we run above the program, the outcome is as follows:
30, 10, 20
In the above example, we have used a set and join them with a separator , .As set is unordered so you will see elements in a different order in the output. The output for the same is given below:
Python Remove Character from String using join() Method
str = "mama786papa" res_str = ''.join([str[i] for i in range(len(str)) if i != 2]) print (res_str)
When we run above the program, the outcome is as follows:
maa786papa
Below are several other functions that we can use to work with string in Python 3