Python String find() – How to Locate Substrings Easily

Python String find() Method

The find() method in Python helps you locate the position of a substring inside another string. It's a safe way to check if a word or character exists and find where it appears first.

Syntax

string.find(substring, start, end)

Parameters:

  • substring – The string you want to find inside the main string (required).
  • start – The position to start the search (optional).
  • end – The position to end the search (optional).

Returns:

  • Index (integer) of the first occurrence of the substring.
  • Returns -1 if the substring is not found.

Example 1: Basic Usage

text = "Python programming is fun"
position = text.find("programming")
print(position)
7

Why? Because the word "programming" starts at index 7 in the string.

Example 2: Substring Not Found

print("apple".find("z"))
-1

Note: find() doesn't crash if the substring isn't found – it simply returns -1.

Example 3: Using Start and End

text = "learn learn learn"
position = text.find("learn", 6)
print(position)
6

Here, we told Python to start looking from index 6. It finds the second "learn" starting at index 6.

Real-Life Use Case

Use find() to check if a user input contains certain keywords:

message = "Please confirm your email address"
if message.find("confirm") != -1:
    print("Confirmation keyword found!")
Confirmation keyword found!

Difference Between find() and index()

  • find() returns -1 if not found
  • index() raises a ValueError if not found

Common Mistakes

  • Forgetting that find() is case-sensitive ("Hello".find("h") returns -1)
  • Using == 0 instead of != -1 when checking if something exists

Summary

  • find() helps locate substrings inside strings
  • Returns index if found, or -1 if not
  • Safe to use even if the substring doesn't exist

Practice Problem

Ask the user to enter a sentence and search for the word "Python". Print the result.

sentence = input("Enter a sentence: ")
index = sentence.find("Python")
if index != -1:
    print("Found 'Python' at index", index)
else:
    print("'Python' not found")
Mallikarjuna Mallisetty, author
About the author

Mallikarjuna Mallisetty

General programming

Mallikarjuna shares practical programming tutorials and foundational concepts designed to help developers learn by building and experimenting.

View LinkedIn profile ↗