As you can see, a tuple is another "container" variable,
which can contain one or more values. In the example above, "CreepyCrawlies" is a tuple containing the values "spiders", "ants" and "lizards".
Unlike lists, which are enclosed within square braces, tuples are enclosed within parentheses, with values separated by commas. The various elements of the tuple are accessed via an index number, with the first element starting at zero. So, to access the element "spiders", you would use the notation
>>> CreepyCrawlies[0]
'spiders'
>>>
while
>>> CreepyCrawlies[2]
'lizards'
>>>
- essentially, the tuple name followed by the index number
enclosed within square braces. You'll remember this "zero-based indexing" from lists.
Defining a tuple is simple - simply assign values (enclosed in square braces) to a variable, as illustrated below:
>>> pasta = ("macaroni", "spaghetti", "lasagne", "fettucine")
>>>
The rules for choosing a tuple name are the same as those for
any other Python variable - it must begin with a letter, and can optionally be followed by more letters and numbers. Like a list, a tuple can mix different types of elements - the following example creates a tuple containing strings, numbers, lists and even another tuple.
It should be noted that when Python sees two or more
comma-separated elements, it automatically creates a tuple for them...which means that the following code snippets are equivalent.
That said, it's a good idea to always explicitly enclose your
tuples within parentheses; this avoids confusion when you review your code seven years later, and also makes it easier to read.
The type() function above is used to find out the type of a specific variable - whether string, list, tuple or little green hybrid.