Last Updated : 11 Jul, 2025
In Python, variables are used to store data that can be referenced and manipulated during program execution. A variable is essentially a name that is assigned to a value. Unlike many other programming languages, Python variables do not require explicit declaration of type. The type of the variable is inferred based on the value assigned.
Variables act as placeholders for data. They allow us to store and reuse values in our program.
Example:
Python
# Variable 'x' stores the integer value 10
x = 5
# Variable 'name' stores the string "Samantha"
name = "Samantha"
print(x)
print(name)
In this article, we’ll explore the concept of variables in Python, including their syntax, characteristics and common operations.
Rules for Naming VariablesTo use variables effectively, we must follow Python’s naming rules:
_
).myVar
and myvar
are different).if
, else
, for
) as variable names.Valid Example:
Python
age = 21
_colour = "lilac"
total_score = 90
Invalid Example:
Python
1name = "Error" # Starts with a digit
class = 10 # 'class' is a reserved keyword
user-name = "Doe" # Contains a hyphen
Assigning Values to Variables Basic Assignment
Variables in Python are assigned values using the =
operator.
Dynamic Typing
Python variables are dynamically typed, meaning the same variable can hold different types of values during execution.
Python
x = 10
x = "Now a string"
Multiple Assignments
Python allows multiple variables to be assigned values in a single line.
Assigning the Same ValuePython allows assigning the same value to multiple variables in a single line, which can be useful for initializing variables with the same value.
Python
a = b = c = 100
print(a, b, c)
Assigning Different Values
We can assign different values to multiple variables simultaneously, making the code concise and easier to read.
x, y, z = 1, 2.5, "Python"
print(x, y, z)
Type Casting a Variable
Type casting refers to the process of converting the value of one data type into another. Python provides several built-in functions to facilitate casting, including int(), float() and str() among others.
Basic Casting Functions
# Casting variables
s = "10" # Initially a string
n = int(s) # Cast string to integer
cnt = 5
f = float(cnt) # Cast integer to float
age = 25
s2 = str(age) # Cast integer to string
# Display results
print(n)
print(f)
print(s2)
Getting the Type of Variable
In Python, we can determine the type of a variable using the type() function. This built-in function returns the type of the object passed to it.
Example Usage of type()
Python
# Define variables with different data types
n = 42
f = 3.14
s = "Hello, World!"
li = [1, 2, 3]
d = {'key': 'value'}
bool = True
# Get and print the type of each variable
print(type(n))
print(type(f))
print(type(s))
print(type(li))
print(type(d))
print(type(bool))
<class 'int'> <class 'float'> <class 'str'> <class 'list'> <class 'dict'> <class 'bool'>Object Reference in Python
Let us assign a variable x to value 5.
x = 5
When x = 5
is executed, Python creates an object to represent the value 5
and makes x
reference this object.
Now, if we assign another variable y to the variable x.
y = x
Explanation:
5
and makes x
reference it. The second statement creates y
and references the same object as x
, not x
itself. This is called a Shared Reference, where multiple variables reference the same object.Now, if we write
x = 'Geeks'
Python creates a new object for the value "Geeks"
and makes x
reference this new object.
Explanation:
y
remains unchanged, still referencing the original object 5
.If we now assign a new value to y
:
y = "Computer"
"Computer"
and updates y
to reference it.5
no longer has any references and becomes eligible for garbage collection.We can remove a variable from the namespace using the del keyword. This effectively deletes the variable and frees up the memory it was using.
Example:
Python
# Assigning value to variable
x = 10
print(x)
# Removing the variable using del
del x
# Trying to print x after deletion will raise an error
# print(x) # Uncommenting this line will raise NameError: name 'x' is not defined
Explanation:
Using multiple assignments, we can swap the values of two variables without needing a temporary variable.
Python
a, b = 5, 10
a, b = b, a
print(a, b)
2. Counting Characters in a String
Assign the results of multiple operations on a string to variables in one line.
Python
word = "Python"
length = len(word)
print("Length of the word:", length)
Length of the word: 6Scope of a Variable
In Python, the scope of a variable defines where it can be accessed in the program. There are two main types of scope: local and global.
Local Variables:global
keyword.Python Quiz:
To learn about it in detail, refer to
local and global.
Can we change the type of a variable after assigning it?The scope of a variable determines where it can be accessed. Local variables are scoped to the function in which they are defined, while global variables can be accessed throughout the program.
What happens if we use an undefined variable?Yes, Python allows dynamic typing. A variable can hold a value of one type initially and be reassigned a value of a different type later.
How can we delete a variable in Python?Using an undefined variable raises a
NameError
. Always initialize variables before use.
We can delete a variable in Python using the
del
keyword:x = 10
del x
#print(x) # Raises a NameError since 'x' has been deleted
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4