Convert CSV to HTML Table in Python Last Updated : 12 Jul, 2025 Comments Improve Suggest changes 17 Likes Like Report CSV file is a Comma Separated Value file that uses a comma to separate values. It is basically used for exchanging data between different applications. In this, individual rows are separated by a newline. Fields of data in each row are delimited with a comma.Example : Name, Salary, Age, No.of years employed Akriti, 90000, 20, 1 Shreya, 100000, 21, 2 Priyanka, 25000, 45, 7 Neha, 46000, 25, 4 Note: For more information, refer to Working with csv files in Python Converting CSV to HTML Table in Python Method 1 Using pandas: One of the easiest way to convert CSV file to HTML table is using pandas. Type the below code in the command prompt to install pandas. pip install pandas Example: Suppose the CSV file looks like this - Python3 # Python program to convert # CSV to HTML Table import pandas as pd # to read csv file named "samplee" a = pd.read_csv("read_file.csv") # to save as html file # named as "Table" a.to_html("Table.htm") # assign it to a # variable (string) html_file = a.to_html() Output: Method 2 Using PrettyTable: PrettyTable is a simple Python library designed to make it quick and easy to represent tabular data in visually appealing ASCII tables. Type the below command to install this module. pip install PrettyTable Example: The above CSV file is used. Python3 from prettytable import PrettyTable # open csv file a = open("read_file.csv", 'r') # read the csv file a = a.readlines() # Separating the Headers l1 = a[0] l1 = l1.split(',') # headers for table t = PrettyTable([l1[0], l1[1]]) # Adding the data for i in range(1, len(a)) : t.add_row(a[i].split(',')) code = t.get_html_string() html_file = open('Tablee.html', 'w') html_file = html_file.write(code) Output : Create Quiz Comment A akritigoswami Follow 17 Improve A akritigoswami Follow 17 Improve Article Tags : Technical Scripter Python Technical Scripter 2019 python-utility Python-pandas +1 More Explore IntroductionPandas Introduction 3 min read How to Install Pandas in Python? 5 min read How To Use Jupyter Notebook - An Ultimate Guide 5 min read Creating ObjectsCreating a Pandas DataFrame 2 min read Python Pandas Series 5 min read Creating a Pandas Series 3 min read Viewing DataPandas Dataframe/Series.head() method - Python 3 min read Pandas Dataframe/Series.tail() method - Python 3 min read Pandas DataFrame describe() Method 4 min read Selection & SlicingDealing with Rows and Columns in Pandas DataFrame 3 min read Pandas Extracting rows using .loc[] - Python 3 min read Extracting rows using Pandas .iloc[] in Python 7 min read Indexing and Selecting Data with Pandas 4 min read Boolean Indexing in Pandas 6 min read Python | Pandas DataFrame.ix[ ] 2 min read Python | Pandas Series.str.slice() 3 min read How to take column-slices of DataFrame in Pandas? 2 min read OperationsPython | Pandas.apply() 4 min read Apply function to every row in a Pandas DataFrame 3 min read Python | Pandas Series.apply() 3 min read Pandas dataframe.aggregate() | Python 2 min read Pandas DataFrame mean() Method 2 min read Python | Pandas Series.mean() 2 min read Python | Pandas dataframe.mad() 2 min read Python | Pandas Series.mad() to calculate Mean Absolute Deviation of a Series 2 min read Python | Pandas dataframe.sem() 3 min read Python | Pandas Series.value_counts() 2 min read Pandas Index.value_counts()-Python 3 min read Applying Lambda functions to Pandas Dataframe 6 min read Manipulating DataAdding New Column to Existing DataFrame in Pandas 6 min read Python | Delete rows/columns from DataFrame using Pandas.drop() 4 min read Python | Pandas DataFrame.truncate 3 min read Python | Pandas Series.truncate() 2 min read Iterating over rows and columns in Pandas DataFrame 4 min read Pandas Dataframe.sort_values() 2 min read Python | Pandas Dataframe.sort_values() | Set-2 3 min read How to add one row in existing Pandas DataFrame? 4 min read Grouping DataPandas GroupBy 4 min read Grouping Rows in pandas 2 min read Combining Multiple Columns in Pandas groupby with Dictionary 2 min read Merging, Joining, Concatenating and ComparingPython | Pandas Merging, Joining and Concatenating 8 min read Python | Pandas Series.str.cat() to concatenate string 3 min read Python - Pandas dataframe.append() 4 min read Python | Pandas Series.append() 4 min read Pandas Index.append() - Python 2 min read Python | Pandas Series.combine() 3 min read Add a row at top in pandas DataFrame 1 min read Python | Pandas str.join() to join string/list elements with passed delimiter 2 min read Join two text columns into a single column in Pandas 2 min read How To Compare Two Dataframes with Pandas compare? 5 min read How to compare the elements of the two Pandas Series? 3 min read Working with Date and TimePython | Working with date and time using Pandas 8 min read Python | Pandas Timestamp.timestamp 3 min read Python | Pandas Timestamp.now 3 min read Python | Pandas Timestamp.isoformat 2 min read Python | Pandas Timestamp.date 2 min read Python | Pandas Timestamp.replace 3 min read Pandas.to_datetime()-Python 3 min read Python | pandas.date_range() method 4 min read Working With Text DataPython | Pandas Working With Text Data 8 min read Python | Pandas Series.str.lower(), upper() and title() 4 min read Python | Pandas Series.str.replace() to replace text in a series 5 min read Python | Pandas Series.replace() 3 min read Python | Pandas Series.str.strip(), lstrip() and rstrip() 4 min read Python | Pandas tseries.offsets.DateOffset 4 min read Like