In this tutorial, I explained how to convert dictionary to list of tuples in Python. As a developer working on various projects for my clients, I came across a scenario where I needed to convert a dictionary to a list. After researching and testing various methods I found a few important methods to achieve this task. Let us learn more about this topic today.
Convert Dictionary to List of Tuples in Python
Let us learn various methods to convert dictionary to list of tuples in Python.
Read How to Fix TypeError:‘tuple’ object is not callable in Python?
1. Use the items() Method
Python’s items() method returns a view object displaying a list of a dictionary’s key-value tuple pairs. By passing this view to the list() constructor, you can obtain a list of tuples.
Example:
# Dictionary of U.S. states and their capitals
state_capitals = {
'California': 'Sacramento',
'Texas': 'Austin',
'Florida': 'Tallahassee'
}
# Converting dictionary to a list of tuples
list_of_tuples = list(state_capitals.items())
print(list_of_tuples)Output:
[('California', 'Sacramento'), ('Texas', 'Austin'), ('Florida', 'Tallahassee')]You can refer to the below screenshot to see the output.

The items() method provides a straightforward way to convert a dictionary into a list of key-value tuples. This approach is efficient and commonly used for such transformations.
Check out How to Use Python Type Hint Tuples for More Robust Code?
2. Use List Comprehension
Python List comprehension offers a concise way to create a list of tuples from a dictionary by iterating over its items.
Example:
# Dictionary of U.S. cities and their populations
city_population = {
'New York': 8419000,
'Los Angeles': 3980000,
'Chicago': 2716000
}
# Converting dictionary to a list of tuples using list comprehension
list_of_tuples = [(city, population) for city, population in city_population.items()]
print(list_of_tuples)Output:
[('New York', 8419000), ('Los Angeles', 3980000), ('Chicago', 2716000)]You can refer to the below screenshot to see the output.

List comprehension offers a concise and readable method to convert a dictionary into a list of tuples. It allows for additional processing or filtering during the transformation.
Read How to Sort a List of Tuples by the Second Element in Python?
3. Use a a For Loop
A for loop can be used to iterate over the dictionary’s items and append each key-value pair as a tuple to a list in Python.
Example:
# Dictionary of U.S. universities and their founding years
universities = {
'Harvard University': 1636,
'Yale University': 1701,
'Princeton University': 1746
}
# Converting dictionary to a list of tuples using a for loop
list_of_tuples = []
for university, year in universities.items():
list_of_tuples.append((university, year))
print(list_of_tuples)Output:
[('Harvard University', 1636), ('Yale University', 1701), ('Princeton University', 1746)]You can refer to the below screenshot to see the output.

Utilizing a for loop provides a clear and explicit way to iterate over dictionary items and append them as tuples to a list. This method is intuitive, especially for those familiar with basic loop constructs.
Check out How to Fix the IndexError tuple index out of range Error in Python?
4. Use the zip() Function
The zip() function can combine the dictionary’s keys and values into tuples. First, extract the keys and values into separate lists, then apply zip() and convert the result to a list.
Example:
# Dictionary of U.S. national parks and their states
national_parks = {
'Yellowstone': 'Wyoming',
'Yosemite': 'California',
'Zion': 'Utah'
}
# Extracting keys and values
keys = list(national_parks.keys())
values = list(national_parks.values())
# Combining keys and values into a list of tuples
list_of_tuples = list(zip(keys, values))
print(list_of_tuples)Output:
[('Yellowstone', 'Wyoming'), ('Yosemite', 'California'), ('Zion', 'Utah')]The zip() function can combine separate lists of keys and values into a list of tuples. While effective, this method involves creating intermediate lists, which may be less efficient for large dictionaries.
Read How to Append Elements to a Tuple in Python?
Conclusion
In this article, I helped you to understand how to convert dictionary to list of tuples in Python. I explained four important methods such as using the items() method, using list comprehension, using a for loop, and using the zip() function.
You can also read:
- How to Sort a Tuple in Python?
- How to Sort by the Second Element in a Tuple in Python?
- How to Return a Tuple in Python?

I am Bijay Kumar, a Microsoft MVP in SharePoint. Apart from SharePoint, I started working on Python, Machine learning, and artificial intelligence for the last 5 years. During this time I got expertise in various Python libraries also like Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn, etc… for various clients in the United States, Canada, the United Kingdom, Australia, New Zealand, etc. Check out my profile.