Introduction and Overview

Welcome to our journey into Python strings! Today, we will delve into string operations, such as concatenation and slicing, and explore a variety of essential built-in string methods available in Python. By the end of your journey, you will have mastered these operations.

Understanding Strings in Python

In Python, a String is a sequence of characters. You can define them using single ('), double ("), or triple (''' or """) quotes for multiline strings:

str1 = "Hello, Python!"
str2 = 'Strings are fun.'
str3 = """This is a
Multiline
String."""

Like lists, strings in Python have indices that start at 0.

String Concatenation

Concatenation links strings together, much like joining links in a chain. Python uses the '+' and '+=' operators for concatenation:

str1 = 'Hello'
str2 = 'World'
merged_str = str1 + ', ' + str2 + '!'
merged_str += ' See?'

print(merged_str) # prints "Hello, World! See?"

Note: The '+' operator is used only to join strings.

Slicing Strings in Python

Slicing in Python is akin to slicing a loaf of bread — you take a piece from the whole. The syntax is pretty simple: str[start:end] that takes a slice from start to end, with start inclusive and end exclusive. For example:

message = 'Python Programming is fun!'
slice_message = message[7:18] # Includes characters on positions 7, 8, ..., 17

print(slice_message) # Prints 'Programming'
Working with String Methods

Python is equipped with various string methods, such as:

  • str.upper() - converts all string letters to uppercase.
  • str.lower() - converts all string letters to lowercase.
  • str.replace(from, to) - replaces all occurrences of from to to.
  • str.index(sub) - searches the index of the first occurrence of the provided substring sub.
  • str.join(e1, e2, ...) - joins all provided strings e1, e2, ... with a provided separator str.
  • str.split(separator) - splits the provided string into multiple parts by the provided separator.
  • len(str) - returns the length of the string str.
  • str * <number> - repeats the str multiple times (number times).

Here's an example of how they work:

text = "Hello, World!"

print(text.upper()) # prints "HELLO, WORLD!"
print(text.lower()) # prints "hello, world!"
print(text.replace('Hello', 'Hi')) # prints "Hi, World!"
print(text.index('World')) # prints 7
print(', '.join(['Hello', 'World', '!', 'How', 'are', 'you', '?'])) # prints "Hello, World, !, How, are, you, ?"
print(text.split(", ")) # prints ["Hello", "World!"]
print(len(text)) # prints 13
print(text * 3) # prints "Hello, World!Hello, World!Hello, World!"
Sign up
Join the 1M+ learners on CodeSignal
Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal