String Manipulation
Common String Methods
Python provides numerous built-in methods for string manipulation:
## Case Conversion
text = "labex python course"
print(text.upper()) ## 'LABEX PYTHON COURSE'
print(text.title()) ## 'Labex Python Course'
print(text.capitalize()) ## 'Labex python course'
String Searching and Checking
text = "LabEx Python Programming"
## Searching Methods
print(text.startswith("LabEx")) ## True
print(text.endswith("Programming")) ## True
print(text.find("Python")) ## 6 (index of substring)
## Whitespace Handling
messy_text = " LabEx Python "
print(messy_text.strip()) ## 'LabEx Python'
print(messy_text.lstrip()) ## 'LabEx Python '
print(messy_text.rstrip()) ## ' LabEx Python'
String Replacement and Splitting
## Replacement and Split
text = "LabEx,Python,Course"
print(text.replace(",", " ")) ## 'LabEx Python Course'
print(text.split(",")) ## ['LabEx', 'Python', 'Course']
## Format Method
name = "LabEx"
version = 3.8
formatted = "Platform: {} Version: {:.1f}".format(name, version)
print(formatted) ## 'Platform: LabEx Version: 3.8'
## F-Strings (Python 3.6+)
formatted_f = f"Platform: {name} Version: {version:.1f}"
print(formatted_f) ## 'Platform: LabEx Version: 3.8'
String Manipulation Workflow
graph TD
A[Original String] --> B{Manipulation Method}
B --> C[Upper Case]
B --> D[Lower Case]
B --> E[Replacement]
B --> F[Splitting]
Advanced String Methods
Method |
Description |
Example |
join() |
Concatenate list elements |
"-".join(['LabEx', 'Python']) |
count() |
Count substring occurrences |
"hello".count('l') |
isalnum() |
Check alphanumeric |
"LabEx2023".isalnum() |
When performing multiple string manipulations, consider using list comprehensions or generator expressions for better performance, especially with large strings.
## Efficient String Processing
words = ["LabEx", "Python", "Course"]
processed = [word.upper() for word in words]
Error Handling in String Manipulation
try:
result = "LabEx".index("X")
except ValueError:
print("Substring not found")