Variables allow you to store and change values based on certain conditions. In many low level languages like C, C++ and Java when declaring a variable it is required that you also specify of what type it will be. This type is then static and will never change. In java for example declaring a variable that will in the future store a number looks like this:
Many scripting languages, like python, are weakly or loosely type. This means that you are not required to asign a type to a variable when you create this. Variable can also easily change types. This makes the language extremely flexible, but it become easy to get confused with what type a variable is.
It is thus recommended that you type variables. An example of typing in python: