Strings in Python
Python : Strings
A string is a sequence of characters enclosed within either single quotes ('...') or double quotes ("..."). Strings are immutable, which means that once a string is created, it cannot be modified.
String Operations in Python
Strings in Python support a wide range of operations such as indexing, slicing, concatenation, and repetition etc. Here we will discuss some important and frequently used operations with examples -
Creating a string in Python
To create a string, you can simply assign a value to a variable using either single or double quotes:
string1 = 'Hello World!'
string2 = "My name is John."
String indexing in Python
In Python, you can access individual characters in a string by using an index. The index starts at 0 for the first character and goes up to n-1 for the nth character, where n is the length of the string.
string = "Hello"
print(string[0]) # Output: 'H'
print(string[1]) # Output: 'e'
print(string[2]) # Output: 'l'
print(string[3]) # Output: 'l'
print(string[4]) # Output: 'o'
String slicing in Python
You can also access a substring from a string using slicing. The syntax for slicing is string[start:stop:step]
. The start index
is inclusive and the stop index
is exclusive. The step value is optional and defaults to 1. For example:
string = "Hello World!"
print(string[0:5]) # Output: 'Hello'
print(string[6:]) # Output: 'World!'
print(string[::-1]) # Output: '!dlroW olleH'
String concatenation in Python
You can concatenate two or more strings using the +
operator.
string1 = "Hello"
string2 = "World"
print(string1 + " " + string2) # Output: 'Hello World'
String repetition in Python
You can repeat a string multiple times using the * operator.
string = "Hello"
print(string * 3) # Output: 'HelloHelloHello'
String formatting in Python
You can format a string using the format() method. This allows you to replace placeholders in a string with values.
name = "John"
age = 30
print("My name is {} and I am {} years old".format(name, age))
# Output: 'My name is John and I am 30 years old'
String Methods in Python
Strings have many built-in methods that you can use to manipulate them.
text = " This is some text. "
print(text.strip()) # Remove whitespace from the beginning and end of the string
print(text.lower()) # Convert the string to lowercase
print(text.upper()) # Convert the string to uppercase
print(text.replace("text", "sentence")) # Replace a substring with another substring
Output
"This is some text."
" this is some text. "
" THIS IS SOME TEXT. "
" This is some sentence. "
String Encoding/Decoding in Python
You can encode a string to a different character encoding or decode a string from a different character encoding using the encode()
and decode()
methods.
text = "Hello, world!"
encoded_text = text.encode("base64")
print(encoded_text)
decoded_text = encoded_text.decode("base64")
print(decoded_text)
# Output
# "SGVsbG8sIHdvcmxkIQ==\n"
# "Hello, world!"
String Searching and Manipulation in python
String searching and manipulation are important tasks in programming, especially when dealing with large amounts of text data.
In Python, there are several built-in methods and functions that can be used to perform string searching and manipulation, here we will discuss some of them-
Searching for Substrings in python
We can use the find() method to search for a substring within a larger string. The find() method returns the index of the first occurrence of the substring, or -1 if the substring is not found.
text = "The quick brown fox jumps over the lazy dog" index = text.find("fox") print(index) # Output: 16
Replacing Substrings in python
We can use the replace() method to replace one substring with another within a larger string. The replace() method returns a new string with the substitutions made.
text = "The quick brown fox jumps over the lazy dog" new_text = text.replace("fox", "cat") print(new_text) # Output: "The quick brown cat jumps over the lazy dog"
Changing Case in python
We can use the lower() and upper() methods to change the case of a string to lowercase or uppercase, respectively.
text = "The quick brown fox jumps over the lazy dog" lower_text = text.lower() upper_text = text.upper() print(lower_text) # Output: "the quick brown fox jumps over the lazy dog" print(upper_text) # Output: "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG"
Stripping Whitespace in python
We can use the strip() method to remove any leading or trailing whitespace from a string.
text = " The quick brown fox jumps over the lazy dog " new_text = text.strip() print(new_text) # Output: "The quick brown fox jumps over the lazy dog"
Splitting and Joining Strings in python
We can use the split() method to split a string into a list of substrings based on a delimiter, and the join() method to join a list of substrings into a single string using a delimiter.
text = "The quick brown fox jumps over the lazy dog" words = text.split(" ") print(words) # Output: ['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog'] new_text = "-".join(words) print(new_text) # Output: "The-quick-brown-fox-jumps-over-the-lazy-dog"
Previous Article
Next Article
Python Tutorials
- Hello World
- Variables and Types
- Lists
- Tuple
- Basic Operators
- Strings
- Conditions
- Loops
- Functions
- Classes and Objects
- Dictionaries
- Map
- Filter
- Reduce
- Sets
- Decorators
- Generators
- Modules and Packages
- Numpy Arrays
- Pandas Basics
- List Comprehensions
- Lambda functions
- Multiple Function Arguments
- Partial functions
- Regular Expressions
- Exception Handling
- Serialization
- Code Introspection