Introduction
Strings are one of the most commonly used data types in Python. A string is a sequence of characters enclosed within single quotes, double quotes, or triple quotes. Strings in Python are immutable, meaning that once a string is created, it cannot be changed.
Creating Strings
You can create strings by enclosing characters in single, double, or triple quotes.
Examples:
single_quote_str = 'Hello'
double_quote_str = "World"
triple_single_quote_str = '''Hello,
World!'''
triple_double_quote_str = """Hello,
World!"""
String Indexing and Slicing
Indexing
You can access individual characters in a string using indexing. Python uses zero-based indexing.
Example:
text = "Hello"
print(text[0]) # Output: H
print(text[1]) # Output: e
print(text[-1]) # Output: o (last character)
Slicing
You can extract a substring from a string using slicing. The syntax for slicing is string[start:end:step]
.
Example:
text = "Hello, World!"
print(text[0:5]) # Output: Hello
print(text[7:12]) # Output: World
print(text[::2]) # Output: Hlo ol!
print(text[::-1]) # Output: !dlroW ,olleH (reversed string)
String Operations
Concatenation
You can concatenate strings using the +
operator.
Example:
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2
print(result) # Output: Hello World
Repetition
You can repeat a string using the *
operator.
Example:
text = "Hello"
result = text * 3
print(result) # Output: HelloHelloHello
Membership
You can check if a substring exists within a string using the in
keyword.
Example:
text = "Hello, World!"
print("Hello" in text) # Output: True
print("Python" in text) # Output: False
String Methods
Python provides many built-in methods for string manipulation. Some commonly used methods include:
lower()
Converts all characters in a string to lowercase.
Example:
text = "Hello, World!"
print(text.lower()) # Output: hello, world!
upper()
Converts all characters in a string to uppercase.
Example:
text = "Hello, World!"
print(text.upper()) # Output: HELLO, WORLD!
strip()
Removes leading and trailing whitespace from a string.
Example:
text = " Hello, World! "
print(text.strip()) # Output: Hello, World!
split()
Splits a string into a list of substrings based on a delimiter.
Example:
text = "Hello, World!"
print(text.split(",")) # Output: ['Hello', ' World!']
join()
Joins a list of strings into a single string, with a specified delimiter.
Example:
words = ["Hello", "World"]
print(" ".join(words)) # Output: Hello World
replace()
Replaces occurrences of a substring with another substring.
Example:
text = "Hello, World!"
print(text.replace("World", "Python")) # Output: Hello, Python!
find()
Returns the index of the first occurrence of a substring. Returns -1
if the substring is not found.
Example:
text = "Hello, World!"
print(text.find("World")) # Output: 7
print(text.find("Python")) # Output: -1
startswith()
and endswith()
Checks if a string starts or ends with a specified substring.
Example:
text = "Hello, World!"
print(text.startswith("Hello")) # Output: True
print(text.endswith("World!")) # Output: True
String Formatting
String formatting allows you to create dynamic strings by embedding variables within string literals.
f-strings
(Python 3.6+)
Example:
name = "Alice"
age = 30
text = f"Name: {name}, Age: {age}"
print(text) # Output: Name: Alice, Age: 30
format()
method
Example:
name = "Alice"
age = 30
text = "Name: {}, Age: {}".format(name, age)
print(text) # Output: Name: Alice, Age: 30
%
operator
Example:
name = "Alice"
age = 30
text = "Name: %s, Age: %d" % (name, age)
print(text) # Output: Name: Alice, Age: 30
Escape Characters
Escape characters are used to insert special characters into strings.
Examples:
text = "Hello\nWorld" # Newline
text = "Hello\tWorld" # Tab
text = "He said, \"Hello\"" # Double quote
Raw Strings
Raw strings treat backslashes as literal characters and do not interpret them as escape characters. Prefix the string with r
to create a raw string.
Example:
text = r"C:\new_folder\test.txt"
print(text) # Output: C:\new_folder\test.txt
Conclusion
Strings are a fundamental data type in Python, and understanding how to work with them is essential for any Python programmer. This guide covered creating strings, indexing and slicing, string operations, common string methods, string formatting, escape characters, and raw strings. With this knowledge, you can effectively manipulate and utilize strings in your Python programs.