Altcademy - a Forbes magazine logo Best Coding Bootcamp 2023

What is a variable in Python

Understanding Variables in Python

When you're starting to learn programming, one of the fundamental concepts you'll encounter is that of a variable. Think of a variable as a labeled box where you can store something, like a number or a piece of text. In Python, variables are used to hold data that your program can manipulate.

The Basics of Variables

In Python, creating a variable is as simple as coming up with a name and assigning it a value. The equal sign (=) is used for this assignment. Here's an example:

greeting = "Hello, World!"

In this line of code, greeting is the variable name, and "Hello, World!" is the value it holds. You can think of the variable name as a label on the box, and the value as the content inside it.

Naming Variables

When you name a variable, you can choose almost any name, but there are a few rules: - The name must start with a letter or an underscore (_), not a number. - The name can contain letters, numbers, and underscores, but no spaces or special characters. - Variable names are case-sensitive, which means greeting, Greeting, and GREETING would be considered different variables.

Types of Variables

Variables can hold different types of information. In Python, the type of a variable is determined by the value it holds. The most common types are:

  • Integers: Whole numbers without a fractional component, like 3 or -42.
  • Floats: Numbers with a decimal point, like 3.14 or -0.001.
  • Strings: Sequences of characters, like "Hello, World!" or "1234".
  • Booleans: Represents True or False.

Here are some examples of variables with different types:

age = 30  # This is an integer
pi = 3.14159  # This is a float
name = "Alice"  # This is a string
is_student = True  # This is a boolean

Using Variables

Once you've created a variable, you can use it in various ways. You can print its value, perform calculations, or combine it with other variables. For example:

# Printing a variable's value
print(greeting)  # Output: Hello, World!

# Performing a calculation
radius = 5
area = pi * (radius ** 2)  # Area of a circle with radius 5
print(area)  # Output: 78.53975

# Combining variables
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name)  # Output: John Doe

Changing Variable Values

Variables in Python are mutable, which means you can change the value they hold after they are created. Here's an example:

counter = 0
print(counter)  # Output: 0

counter = counter + 1
print(counter)  # Output: 1

In the above code, we first set counter to 0. Then we update it by adding 1 to its current value.

Dynamic Typing

Python is a dynamically typed language, which means you don't have to declare the type of a variable when you create it. The type is inferred from the value you assign. Also, you can reassign a variable to a different type:

number = 42  # This is an integer
print(number)  # Output: 42

number = "forty-two"  # Now it's a string
print(number)  # Output: forty-two

Notice how number was first an integer and then became a string. This flexibility is one of the features that makes Python easy to use but also requires you to be careful with your variable assignments.

Memory Management

When you create a variable, Python stores it in memory. You don't need to manage this memory yourself; Python's garbage collector will automatically free up memory when a variable is no longer needed.

Practical Example

Let's look at a practical example of using variables in a Python program. Suppose we want to calculate the Body Mass Index (BMI) for a person. The formula for BMI is weight in kilograms divided by the square of height in meters.

# Variables for a person's weight and height
weight_kg = 70
height_m = 1.75

# Calculate BMI
bmi = weight_kg / (height_m ** 2)

# Print the result
print("The BMI is:", bmi)  # Output: The BMI is: 22.857142857142858

In this example, weight_kg and height_m are variables that store the person's weight and height, respectively. We use these variables to calculate the bmi variable, which we then print out.

Intuitions and Analogies

To help you better understand variables, consider this analogy: Imagine you're at a grocery store with a shopping cart (the program). As you pick items off the shelves (input data), you place them in your cart (assign them to variables). Each item has a label (variable name) and content (value). You can swap items in your cart (change variable values) as you shop, and when you check out (the program ends), the cart is emptied for you (memory is freed).


Variables are the building blocks of any Python program. They allow you to store, manipulate, and access data in a flexible and intuitive way. As you continue your journey in programming, you'll find that understanding and using variables effectively is key to creating powerful and efficient software. Just like in our grocery store analogy, mastering the use of your shopping cart—your variables—will make you a proficient shopper in the vast supermarket of programming. Happy coding!