Python
Python OOPs: Class, Object, Inheritance and Constructor with Example
OOPs in Python OOPs in Python is a programming approach that focuses on using objects and classes...
Tuple Matching in Python is a method of grouping the tuples by matching the second element in the tuples. It is achieved by using a dictionary by checking the second element in each tuple in python programming. However, we can make new tuples by taking portions of existing tuples.
Tuple Syntax
Tup = ('Jan','feb','march')
To write an empty tuple, you need to write as two parentheses containing nothing-
tup1 = ();
For writing tuple for a single value, you need to include a comma, even though there is a single value. Also at the end you need to write semicolon as shown below.
Tup1 = (50,);
Tuple indices begin at 0, and they can be concatenated, sliced and so on.
In this tutorial, we will learn-
Tuple Assignment
Python has tuple assignment feature which enables you to assign more than one variable at a time. In here, we have assigned tuple 1 with the persons information like name, surname, birth year, etc. and another tuple 2 with the values in it like number (1,2,3,….,7).
For Example,
(name, surname, birth year, favorite movie and year, profession, birthplace) = Robert
Here is the code,
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print(tup1[0]) print(tup2[1:4])
In packing, we place value into a new tuple while in unpacking we extract those values back into variables.
x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print(company) print(emp) print(profile)
A comparison operator in Python can work with tuples.
The comparison starts with a first element of each tuple. If they do not compare to =,< or > then it proceed to the second element and so on.
It starts with comparing the first element from each of the tuples
Let's study this with an example-
#case 1
a=(5,6) b=(1,4) if (a>b):print("a is bigger") else: print("b is bigger")
#case 2
a=(5,6) b=(5,4) if (a>b):print("a is bigger") else: print ("b is bigger")
#case 3
a=(5,6) b=(6,4) if (a>b):print("a is bigger") else: print("b is bigger")
Case1: Comparison starts with a first element of each tuple. In this case 5>1, so the output a is bigger
Case 2: Comparison starts with a first element of each tuple. In this case 5>5 which is inconclusive. So it proceeds to the next element. 6>4, so the output a is bigger
Case 3: Comparison starts with a first element of each tuple. In this case 5>6 which is false. So it goes into the else block and prints "b is bigger."
Since tuples are hashable, and list is not, we must use tuple as the key if we need to create a composite key to use in a dictionary.
Example: We would come across a composite key if we need to create a telephone directory that maps, first-name, last-name, pairs of telephone numbers, etc. Assuming that we have declared the variables as last and first number, we could write a dictionary assignment statement as shown below:
directory[last,first] = number
Inside the brackets, the expression is a tuple. We could use tuple assignment in a for loop to navigate this dictionary.
for last, first in directory:
print first, last, directory[last, first]
This loop navigates the keys in the directory, which are tuples. It assigns the elements of each tuple to last and first and then prints the name and corresponding telephone number.
Tuples and dictionary
Dictionary can return the list of tuples by calling items, where each tuple is a key value pair.
a = {'x':100, 'y':200} b = list(a.items()) print(b)
Tuples are immutable and cannot be deleted. You cannot delete or remove items from a tuple. But deleting tuple entirely is possible by using the keyword
del
To fetch specific sets of sub-elements from tuple or list, we use this unique function called slicing. Slicing is not only applicable to tuple but also for array and list.
x = ("a", "b","c", "d", "e") print(x[2:4])
The output of this code will be ('c', 'd').
Here is the Python 2 Code for all above example
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print tup1[0] print tup2[1:4] #Packing and Unpacking x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print company print emp print profile #Comparing tuples #case 1 a=(5,6) b=(1,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 2 a=(5,6) b=(5,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 3 a=(5,6) b=(6,4) if (a>b):print "a is bigger" else: print "b is bigger" #Tuples and dictionary a = {'x':100, 'y':200} b = a.items() print b #Slicing of Tuple x = ("a", "b","c", "d", "e") print x[2:4]
To perform different task, tuple allows you to use many built-in functions like all(), any(), enumerate(), max(), min(), sorted(), len(), tuple(), etc.
Summary:
Python has tuple assignment feature which enables you to assign more than one variable at a time.
OOPs in Python OOPs in Python is a programming approach that focuses on using objects and classes...
What is Python Array? A Python Array is a collection of common type of data structures having...
Python is one of the most popular programming languages. Currently, each of the following six...
What is Function in Python? A Function in Python is a piece of code which runs when it is...
Python List data-type helps you to store items of different data types in an ordered sequence. The...
$20.20 $9.99 for today 4.5 (129 ratings) Key Highlights of Python Tutorial PDF 211+ pages eBook...