Learn Python
Python is a popular programming language.
Python can be used on a server to create web applications.
Start learning Python now »
Learning by Examples
With our "Try it Yourself" editor, you can edit Python code and view the result.
Click on the "Try it Yourself" button to see how it works.
Python File Handling
In our File Handling section you will learn how to open, read, write, and delete files.
Python File Handling
Python Database Handling
In our database section you will learn how to access and work with MySQL and MongoDB databases:
Python MySQL Tutorial
Python MongoDB Tutorial
Python Exercises
Test Yourself With Exercises
Exercise:
Insert the missing part of the code below to output "Hello World".
Start the Exercise
Python Examples
Learn by examples! This tutorial supplements all explanations with clarifying examples.
See All Python Examples
Python Quiz
Test your Python skills with a quiz.
Python Quiz
My Learning
Track your progress with the free "My Learning" program here at W3Schools.
Log into your account, and start earning points!
This is an optional feature. You can study W3Schools without using My Learning.
Python Reference
You will also find complete function and method references:
Reference Overview
Built-in Functions
String Methods
List/Array Methods
Dictionary Methods
Tuple Methods
Set Methods
File Methods
Python Keywords
Python Exceptions
Python Glossary
Random Module
Requests Module
Math Module
CMath Module
Download Python
Download Python from the official Python web site: //python.org
Kickstart your career
Get certified by completing the course
Get certified
w3schoolsCERTIFIED.2022Unpacking a Tuple
When we create a tuple, we normally assign values to it. This is called "packing" a tuple:
But, in Python, we are also allowed to extract the values back into variables. This is called "unpacking":
Example
Unpacking a tuple:
fruits = ["apple", "banana", "cherry"]
[green, yellow, red] = fruits
print[green]
print[yellow]
print[red]
Try it Yourself »
Note: The number of variables must match the number of values in the tuple, if not, you must use an asterisk to collect the remaining values as a list.
Using Asterisk*
If the number of variables is less than the number of values, you can add an *
to the variable name and the values will be assigned to the
variable as a list:
Example
Assign the rest of the values as a list called "red":
fruits = ["apple", "banana", "cherry", "strawberry", "raspberry"]
[green, yellow, *red] = fruits
print[green]
print[yellow]
print[red]
Try it Yourself »
If the asterisk is added to another variable name than the last, Python will assign values to the variable until the number of values left matches the number of variables left.
Example
Add a list of values the "tropic" variable:
fruits = ["apple", "mango", "papaya", "pineapple", "cherry"]
[green, *tropic, red] = fruits
print[green]
print[tropic]
print[red]
Try it Yourself »
View Discussion
Improve Article
Save Article
View Discussion
Improve Article
Save Article
Python Tuples In python tuples are used to store immutable objects. Python Tuples are very similar to lists except to some situations. Python tuples are immutable means that they can not be modified in whole program.
Packing and Unpacking a Tuple: In Python, there is a very powerful tuple assignment feature that assigns the right-hand side of values into the left-hand side. In another way, it is called unpacking of a tuple of values into a variable. In packing, we put values into a new tuple while in unpacking we extract those values into a single variable.
Example 1
Python3
a
=
[
"MNNIT Allahabad"
,
5000
,
"Engineering"
]
[college, student, type_ofcollege]
=
a
print
[college]
print
[student]
print
[type_ofcollege]
Output:
MNNIT Allahabad 5000 Engineering
NOTE : In unpacking of tuple number of variables on left-hand side should be equal to number of values in
given tuple a.
Python uses a special syntax to pass optional arguments [*args] for tuple unpacking. This means that there can be many number of arguments in place of [*args] in python. All values will be assigned to every variable on the left-hand side and all remaining values will be assigned to *args .For better understanding consider the following code.
Example 2
Python3
x,
*
y, z
=
[
10
,
"Geeks "
,
" for "
,
"Geeks "
,
50
]
print
[x]
print
[y]
print
[z]
x, y,
*
z
=
[
10
,
"Geeks "
,
" for "
,
"Geeks "
,
50
]
print
[x]
print
[y]
print
[z]
Output:
10 ['Geeks ', ' for ', 'Geeks '] 50 10 Geeks [' for ', 'Geeks ', 50]
In python tuples can be unpacked using a function in function tuple is passed and in function values are unpacked into normal variable. Consider the following code for better understanding.
Example 3 :
Python3
def
result[x, y]:
return
x
*
y
print
[result[
10
,
100
]]
z
=
[
10
,
100
]
print
[result[
*
z]]