How To Search In a CSV File Using Python

In this tutorial, we will look at how to search for specific data in a CSV file using Python. This can be useful if you want to programmatically find specific information in a large dataset or automate data processing tasks.

The pandas library and the built-in csv module are commonly used to work with CSV data in Python. We will be using the pandas library in this tutorial due to its simplicity and powerful features.

Example CSV File:

Let’s assume we have a CSV file named students.csv with the following content:


Step 1: Import the necessary Python libraries

To begin, we need to import the pandas library.

Step 2: Read the CSV file into a DataFrame

Next, we will read the CSV file into a DataFrame using the read_csv function from Pandas library. Replace the file_path variable content with the path of your CSV file.

Step 3: Search the CSV data for specific values

Now that we have the CSV data in a DataFrame, we can perform various search operations on it. Pandas provide several filtering and querying methods that allow us to search for specific values in the DataFrame.

In this example, we will search for all students who have scored more than 90 in any subject:

The above code will filter the rows from the DataFrame where the ‘Score’ column value is greater than 90.

Step 4: Display the results of our search

Finally, we can display the search results by printing the filtered DataFrame:

This will output the following results:

Name Age Grade Subject Score
2 Alice 12 7 Science 95
3 Charlie 12 7 Math 92
4 Bob 13 7 Science 90

Full Code:


      Name  Age  Grade  Subject  Score
2    Alice   12      7  Science     95
3  Charlie   12      7     Math     92
4      Bob   13      7  Science     90


In this tutorial, we demonstrated how to search for specific data within a CSV file using Python and the pandas library. By importing the data into a DataFrame, we were able to easily perform a search and display the results. The pandas library provides a flexible and powerful way to work with CSV files and manipulate the data as needed.