How To: Variables


Variable containers

Computer scientists often work with variables. Variables in computer science are pretty different than those in math, even though they're called the same thing. Because of this, some people call the computer sceince versions containers, since they don't actually vary like math variables do; they contain information.

Variable containers = name and value

There's two parts of every variable container: a name and a value. For example:

age = 17

Here, the variable container's name is age, on the left, and its value is 17, on the right. This variable container is storing the number 17.

Here's another:

weather = "cloudy"

Here, the variable container's name is weather (left side), and its value is "cloudy" (right side.) This variable countainer is storing the string "cloudy".

In the console below, we (again) put the value 17 in the age container and the value "cloudy" in the weather container. Since we put values in the container, we can take them out later.

This becomes really useful when we want to save values to use later; with variable containers, we don't have to remember the values, or even where they came from – we just have to remember where we put them.

Naming variable containers

There's a few rules to keep in mind when you're naming variable containers:

Begin with a letter

Variable container names must start with a letter.

If you try to start the name with a symbol or a number, Python will give you a ParseError, which is its way of saying it doesn't understand what you're trying to do.

Alphanumeric

Variable container names can only contain letters and numbers – no symbols, spaces, or other things that aren't (A-z, 0-9) allowed.

Case sensitive

Variable containers are case sensitive, which means that the name var is different from VarvAr, and VAR.

You can see that in the console below, where we set varVarvAr, and VAR to different values and then print out the different values.

Unique

Each variable container's name must be unique; that is, no other variable can have its name.

Python doesn't yell, or throw an error, if you re-use a variable name – it just re-writes the old value with a new one, which can be pretty confusing if you don't expect it.

Take a look at the code in the console below for an example. It creates two variable containers, name and question. The name variable container ends up holding the string "Python" – the string "Trinket", which it originally held, got lost when we wrote name = "Python"

It might help to think of variable containers as named buckets that can only hold one thing; if you put something in one of them, it's in there until you replace it with something else.

Mutli-word names

It's common, but not required, to use snake case – all lower-case letters, with underscores _ instead of spaces – if your variable container name is longer than one word:

Challenge

Set up your own variable containers:

  • fill the fav_search_engine variable container with the string "Google"
  • fill the year variable container with the number 2015
  • fill the next_olympics variable container with the number 2016

Then, print out the values that the fav_search_engineyear, and next_olympics variable containers contain.