Typeerror: dict is not a sequence

Error: TypeError: dict is not a sequence

This error occurs when you try to treat a dictionary as a sequence (such as a list or tuple) in your code. In Python, dictionaries are not sequences, so you cannot access their elements using indexing or iteration like you would do with lists or tuples.

Let’s see an example to better understand this:

    
      # Creating a dictionary
      person = {"name": "John", "age": 30, "city": "New York"}
      
      # Trying to treat the dictionary as a sequence
      for i in person:
          print(i)
    
  

In the above example, we create a dictionary person with three key-value pairs. Then, we try to iterate over the dictionary using a for loop by assigning each key to the variable i and printing it. However, this will raise the TypeError: dict is not a sequence error.

To fix this error, you need to use the appropriate methods and attributes provided by dictionaries for accessing their elements. Let’s update the above example to retrieve the values from the dictionary correctly:

    
      # Accessing values in the dictionary
      for key, value in person.items():
          print(key, value)
    
  

By using the items() method of the dictionary, we can iterate over the key-value pairs and print them without encountering the TypeError.

Read more

Leave a comment