Python has no command for declaring a variable.
A variable is created the moment you first assign a value to it: x=5, x="Barnaby"
Variables do not need to be declared with any particular type, and can even change type after they have been set.
If you want to specify the data type of a variable, this can be done with casting: x=str(3)
You can get the data type of a variable with the type() function: print(type(x))
String variables can be declared either by using single or double quotes: x="Barnaby" & x='Barnaby' are the same
Variable names are case-sensitive: x=5 & X="Barnaby" are seperate
AVariable can have a short name (like x and y) or a more descriptive name (age, carname, total_volume). Rules for Python variables:
A variable name must start with a letter or the underscore character
A variable name cannot start with a number
A variable name can only contain alpha-numeric characters and underscores (A-z, 0-9, and _ )
Variable names are case-sensitive (age, Age and AGE are three different variables)
Variable names with more than one word can be difficult to read.
There are several techniques you can use to make them more readable:
Camel Case is each word, except the first, starts with a capital letter: myVariableName = "Barnaby"
Pascal Case is each word starts with a capital letter: MyVariableName = "Barnaby"
Sanek Case is each word is separated by an underscore character: my_variable_name = "Barnaby"
Python allows you to assign values to multiple variables in one line: x, y, z = "Barnaby", "is", "God"
And you can assign the same value to multiple variables in one line: x = y = z = "Barnaby"
If you have a collection of values in a list, tuple etc. Python allows you to extract the values into variables. This is called unpacking:
gods = ["Barnaby","Zeus","Monkey King"]
x, y, z = gods
Variables that are created outside of a function (as in all of the examples above) are known as global variables.
Global variables can be used by everyone, both inside of functions and outside:
x = "God"
def myFunc():
print("Barnaby is a " + x)
myFunc()
If you create a variable with the same name inside a function, this variable will be local, and can only be used inside the function. The global variable with the same name will remain as it was, global and with the original value.
Normally, when you create a variable inside a function, that variable is local, and can only be used inside that function.
To create a global variable inside a function, you can use the global keyword. Also, use the global keyword if you want to change a global variable inside a function:
x = "not a God"
def myFunc():
global x
x = "God"
myFunc()
print("Barnaby is a " + x)