Python Language Tuple: Difference between revisions
Line 8: | Line 8: | ||
<syntaxhighlight lang='python'> | <syntaxhighlight lang='python'> | ||
empty_tuple = () | empty_tuple = () | ||
one_element_tuple = 1, # the trailing comma is mandatory | one_element_tuple = 1, # the trailing comma is mandatory | ||
two_element_tuple = 1,2, | two_element_tuple = 1,2, # for two or more elements, the trailing comma is optional | ||
</syntaxhighlight> | </syntaxhighlight> | ||
For aesthetic reasons, and also to make the tuple more visible, the comma-driven declaration can be enclosed in optional parentheses: | For aesthetic reasons, and also to make the tuple more visible, the comma-driven declaration can be enclosed in optional parentheses: | ||
<syntaxhighlight lang='python'> | <syntaxhighlight lang='python'> | ||
empty_tuple = () | empty_tuple = () | ||
one_element_tuple = (1,) # the trailing comma is mandatory | one_element_tuple = (1,) # the trailing comma is mandatory | ||
two_element_tuple = (1,2,) # for two or more elements, the trailing comma is optional | two_element_tuple = (1,2,) # for two or more elements, the trailing comma is optional | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 05:11, 20 January 2022
Internal
Overview
A tuple is a immutable sequence type that contains zero or more elements and whose elements can be of different types. Once a tuple is defined, you can't add, delete or change items. A tuple is similar to a constant list, and could be used instead of a list, if we can afford the "list" to be immutable. Naturally, the list's mutating functions append()
, insert()
do not exist on tuples. There are several advantages of using a tuple instead of a list: a tuple uses less space than a list and they cannot be mutated by mistake. Positional function arguments can be grouped together and provided as a tuple in the function body (*args
).
Declaration
A tuple is declared by specifying commas after each of its elements, with the exception of the empty tuple, that uses ()
:
empty_tuple = ()
one_element_tuple = 1, # the trailing comma is mandatory
two_element_tuple = 1,2, # for two or more elements, the trailing comma is optional
For aesthetic reasons, and also to make the tuple more visible, the comma-driven declaration can be enclosed in optional parentheses:
empty_tuple = ()
one_element_tuple = (1,) # the trailing comma is mandatory
two_element_tuple = (1,2,) # for two or more elements, the trailing comma is optional
Conversion from other Data Structures
Tuple Unpacking
Assigning multiple variable at once is called "tuple unpacking":
t = (1, 'B', 3.0)
a, b, c = t
print(a) # will print 1
print(b) # will print 'B'
print(c) # will print 3.0
Exchanging Variable Values
Tuples can be used to exchange to variable values without using a third temporary variable.
Named Tuples
Named tuples can be a simple alternative to objects.