Many programming languages are statically typed languages where the variable is initially declared with a specific type, and during its lifetime, it must always have that type.
But in Python, variables are dynamically typed and not subject to the data type restriction. A variable may be assigned to a value of one type, and then later, we can also re-assigned a value of a different type. Let's see the example.
var = 10
print(var) # 10
# print its type
print(type(var)) # <class 'int'>
# assign different integer value to var
var = 55
print(var) # 55
# change var to string
var = "Now I'm a string"
print(var) # Now I'm a string
# print its type
print(type(var)) # <class 'str'>
# change var to float
var = 22.37
print(var) # 22.37
# print its type
print(type(var)) # <class 'float'>