Can I put a tuple into an array in python?

One thing to keep in mind is that a tuple is immutable. This means that once it’s created, you can’t modify it in-place. A list, on the other hand, is mutable — meaning you can add elements, remove elements, and change elements in-place. A list has extra overhead, so only use a list if you need to modify the values.

You can create a list of tuples:

>>> list_of_tuples = [(1,2),(3,4)]
>>> list_of_tuples
[(1, 2), (3, 4)]

or a list of lists:

>>> list_of_lists = [[1, 2], [3, 4]]
>>> list_of_lists
[[1, 2], [3, 4]]

The difference is that you can modify the elements in the list of lists:

>>> list_of_lists[0][0] = 7
>>> list_of_lists
[[7, 2], [3, 4]]

but not with the list of tuples:

>>> list_of_tuples[0][0] = 7
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

To iterate over a list of tuples:

>>> for (x,y) in list_of_tuples:
...    print x,y
... 
1 2
3 4

Leave a Comment