Python String Data Type
In Python, a string is a data type consisting of a sequence of characters, which can include not only letters but also spaces, numbers, and special symbols. The string data type is mainly used to represent text data and can be defined using double quotes (" "
), single quotes (' '
), or triple quotes (""" """
or ''' '''
).
string1 = "Hello, World!" # using double quotes
string2 = 'Python is great' # using single quotes
string3 = """This is a multiline
string""" # using triple quotes (a string spanning multiple lines)
Characteristics of Strings
1. Immutable
Strings are immutable data types. This means that once a string is defined, its content cannot be altered. Changing only a part of a string is not directly possible; instead, a new string must be created.
2. Indexing and Slicing
Strings have index numbers for each character, allowing access to specific characters. Python indexing starts from 0.
text = "Python"
print(text[0]) # 'P'
print(text[-1]) # 'n' (last character)
Slicing, which allows cutting out parts of a string, is also supported.
print(text[1:4]) # 'yth'
print(text[:2]) # 'Py'
print(text[2:]) # 'thon'
3. String Operations
Strings can be concatenated using the +
operator.
str1 = "Hello"
str2 = "World"
result = str1 + " " + str2 # "Hello World"
Strings can also be repeated using the *
operator.
repeated = "Hello " * 3 # "Hello Hello Hello "
4. String Methods
There are various useful methods built into the string data type for manipulating strings. For example:
str.upper()
: Converts all characters in the string to uppercasestr.lower()
: Converts all characters in the string to lowercasestr.strip()
: Removes whitespace from the beginning and end of the stringstr.split()
: Splits the string based on a specific delimiterstr.replace(a, b)
: Replaces a specific part of the string with another stringstr.find(sub)
: Returns the first position of a substring within the string
greeting = " Hello, Python! "
print(greeting.strip()) # "Hello, Python!"
print(greeting.upper()) # " HELLO, PYTHON! "
print(greeting.replace("Python", "World")) # " Hello, World! "
5. Formatting
String formatting provides a way to insert variables into strings. Python offers various methods for string formatting.
f-strings (Python 3.6 and above)
name = "Alice"
age = 25
print(f"My name is {name} and I am {age} years old.")
str.format()
method
print("My name is {} and I am {} years old.".format(name, age))
Percent (%) Formatting
print("My name is %s and I am %d years old." % (name, age))
Summary
- Strings are defined using double or single quotes.
- Strings are immutable, and indexing and slicing are possible.
- String concatenation (
+
) and repetition (*
) are possible. - Various built-in methods and formatting capabilities are provided.
By utilizing these features, you can easily handle and manipulate string data.