A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/python/python-program-split-join-string/ below:

Split and join a string in Python

Split and join a string in Python

Last Updated : 01 May, 2025

The goal here is to split a string into smaller parts based on a delimiter and then join those parts back together with a different delimiter. For example, given the string "Hello, how are you?", you might want to split it by spaces to get a list of individual words and then join them back together with a different delimiter like a hyphen (-) to create a formatted string. The result would be "Hello,-how-are-you?".

Using split() and join()

split() function divides the string into a list of words and join() reassembles them with a specified separator. It is highly efficient and commonly used in Python for basic string manipulations.

Python
a = "Hello, how are you?"
b = a.split()  # Split by space
c = "-".join(b)  # Join with hyphen

print(b)
print(c)

Output
['Hello,', 'how', 'are', 'you?']
Hello,-how-are-you?

Explanation:

Using re.split() and '-'.join()

In cases needing advanced splitting e.g., handling multiple spaces or different delimiters, re.split() from the re module offers more flexibility. However, it’s less efficient than split() for simple cases due to the overhead of regular expression processing.

Python
import re
a = "Hello, how are you?"

b = re.split(r'\s+', a) # Split by spaces
c = "-".join(b) # Join with a hyphen

print(b)
print(c)

Output
['Hello,', 'how', 'are', 'you?']
Hello,-how-are-you?

Explanation:

Using str.partition() and str.replace()

This method splits the string manually using partition(), iterating over it to separate head and tail parts. After splitting, replace() or manual manipulation joins the parts. While functional, it’s less efficient due to multiple iterations and extra logic.

Python
a = "Hello, how are you?"
words, rem = [], a

# Split by space manually
while rem:
    head, _, rem = rem.partition(" ")
    if head: words.append(head)

c = "-".join(words) # Join with hyphen
print(words)
print(c)

Output
['Hello,', 'how', 'are', 'you?']
Hello,-how-are-you?

Explanation:

Using str.split() with list comprehension

This method splits the string with split() and uses a list comprehension to process or filter the list. While more compact and readable, it adds an extra step, reducing efficiency compared to using split() and join() directly.

Python
a = "Hello, how are you?"

# Split by space
b = [word for word in a.split()]

# Join with a hyphen
c = "-".join(b)

print(b)
print(c)

Output
['Hello,', 'how', 'are', 'you?']
Hello,-how-are-you?

Explanation:

Related Articles

Program to split and join a string


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4