Python String startswith()

In this tutorial, we will learn about the Python String startswith() method with the help of examples.

The startswith() method returns True if a string starts with the specified prefix(string). If not, it returns False.

Example

message = 'Python is fun'

# check if the message starts with Python
print(message.startswith('Python'))

# Output: True

1. Syntax of String startswith()

The syntax of startswith() is:

str.startswith(prefix[, start[, end]])

2. startswith() Parameters

startswith() method takes a maximum of three parameters:

  • prefix – String or tuple of strings to be checked
  • start (optional) – Beginning position where prefix is to be checked within the string.
  • end (optional) – Ending position where prefix is to be checked within the string.

3. startswith() Return Value

startswith() method returns a boolean.

  • It returns True if the string starts with the specified prefix.
  • It returns False if the string doesn’t start with the specified prefix.

4. Example 1: startswith() Without start and end Parameters

text = "Python is easy to learn."

result = text.startswith('is easy')
# returns False
print(result)

result = text.startswith('Python is ')
# returns True
print(result)

result = text.startswith('Python is easy to learn.')
# returns True
print(result)

Output

False
True
True

5. Example 2: startswith() With start and end Parameters

text = "Python programming is easy."

# start parameter: 7
# 'programming is easy.' string is searched
result = text.startswith('programming is', 7)
print(result)

# start: 7, end: 18
# 'programming' string is searched
result = text.startswith('programming is', 7, 18)
print(result)

result = text.startswith('program', 7, 18)
print(result)

Output

True
False
True

6. Passing Tuple to startswith()

It’s possible to pass a tuple of prefixes to the startswith() method in Python.

If the string starts with any item of the tuple, startswith() returns True. If not, it returns False

7. Example 3: startswith() With Tuple Prefix

text = "programming is easy"
result = text.startswith(('python', 'programming'))

# prints True
print(result)

result = text.startswith(('is', 'easy', 'java'))

# prints False
print(result)

# With start and end parameter
# 'is easy' string is checked
result = text.startswith(('programming', 'easy'), 12, 19)

# prints False
print(result)

Output

True
False
False

If you need to check if a string ends with the specified suffix, you can use endswith() method in Python.