Muutuja

Muutuja (ingl k variable) on nimega varustatud koht arvuti mälus väärtuste salvestamiseks. Teisisõnu, muutuja kasutamine programmis teeb võimalikuks andmete meeleshoidmise programmi töötamise jooksul.

Võib ka öelda, et muutuja võimaldab hoida endas andmeid (korraga küll vaid ühte väärtust). Kuigi mitmetel juhtudel on võimalik programmeerida ilma muutujaid kasutamata, on nende kasutamine siiski programmeerimise protsessi mugavamaks ja lihtsamaks tegev.

Muutuja "eluiga" algab selle deklareerimisest ja (pisut lihtsustatult) lõppeb programmitöö lõppemisega. Kui enamus programmeerimiskeeltes toimub muutuja deklareerimine muutujate deklareerimise lauses, siis Python'is toimub muutuja deklareerimine omistuslausega (assignment statement). See tähendab, et muutuja võetakse kasutusele selle esmakordsel väärtustamisel.

Muutuja väärtustamine

Muutujale omistatakse väärtus võrdusmärgi (=) abil.

Näiteks, olgu meil tarvis võtta kasutusele muutuja nimega 'greeting', mis peab hoidma endas /introduction/string (ehk jutumärkide või ülakomade vahele võetud märgijada) "Hello".

# Declaring a variable with name 'greeting', and assigning it to the value "Hello".
greeting = "Hello"

# When using a variable, we actually use the value a variable was assigned to.
print(greeting)  # --> Hello
print(greeting + " and welcome aboard!")  # --> Hello and welcome aboard!

# Every time we need a word 'Hello' we can just call our variable rather than type the desired word again and again.
print(greeting + " again!")  # --> Hello again!

Muutujal saab olla ainult üks väärtus. Kui anda muutujale uus väärtus, siis eelmine väärtus asendatakse uue väärtusega.

# The variable can hold only one single value, so the previous one is deleted.
greeting = "Our variable now holds different value."
print(greeting)  # --> Our variable now holds different value.

Muutuja andmetüüp

Muutuja võib endas talletada ükskõik millist andmetüüpi, näiteks: sõne (string), täisarv (int), ujukomaarv (float), tõeväärtus (boolean), järjend (list), ennik (tuple), hulk (set), sõnastik (dict) jne väärtust.

Andmetüüpide kohta saab näiteks rohkem lugeda järgnevatelt lehekülgedelt:

Erinevad andmetüübid koodinäitena:

university = "TalTech"  # string
age = 19  # int
distance = 10.5  # float
is_available = True  # boolean
list_of_animals = ["dog", "cat", "zebra"]  # list

Pythonis võib muutuja hoida algselt ühte andmetüüpi väärtust ja uue väärtuse omistamisel hoopis teist andmetüüpi väärtust.

greeting = "Hello"
print(greeting)  # --> "Hello"
print(type(greeting))  # --> <class 'str'>

# Giving variable a new value.
greeting = 5
print(greeting)  # --> 5
print(type(greeting))  # --> <class 'int'>

Muutuja nimetamine

Muutuja nime valimisel tuleb arvestada, et programmikoodi lugeja peab saama aru, mis sisuga väärtust antud muutujas hoitakse.

Muutujate nimetamisel Pythonis peab arvestama järgmiseid tingimusi, sest nende tingimuste järgimisel ei teki muutujate nimetamisel koodi vigu:
  • Muutuja nimi ei alga numbriga (0-9), aga alates teisest tähest võib kasutatada numbreid: person1 = "Mati".

  • Muutuja nimes kasutatakse ainult ladina tähti, numbreid (0-9) ja alakriipse (_).

  • Muutuja nimena ei saa kasutada Pythonis eritähendusega sõnu: and, def, elif, else, False, for, from, if, import, in, None, not, or, pass, return, True, while jne. Eritähendusega sõnade kohta saab lugeda järgnevalt lehelt: W3Schools - "Python Keywords".

Muutujate nimetamisel peaks järgima ka järgmiseid tingimusi, et kood oleks loetavam ja vastaks tingimustele.
  • Muutuja nimi on kirjutatud läbivate väikeste tähtedega: number_of_animals

  • Muutuja nimi on tõstutundlik ehk muutujad number = 4, Number = 4 ja NUMBER = 4 on kolm erinevat muutujat.

  • Muutuja nimes ei kasutatata tühikuid, aga kui on vaja kasutatada mitmest sõnast koosnevat muutuja nime, siis kasutatakse tühikute asemel alakriipse (_): last_name

Näited:

first_name = "Mati"
seats_in_train = 100
person_with_most_hobbies = "Kati"

# Variable names are case-sensitive.
variable = 4
Variable = 10
VARIABLE = 1
print(variable)  # --> 4
print(Variable)  # --> 10
print(VARIABLE)  # --> 1

Operatsioonid muutujaga

Muutujaga saab teha erinevaid operatsioone vastavalt selle andmetüübile. Näitena on allpool toodud muutujale väärtuse omistamine ning seejärel selle väärtuse muutmine. Lisaks on näitena toodud ka välja, kuidas korraga omistada väärtused mitmele erinevale muutujale.

# Declaring a variable which holds a list.
list_var = ["args", "kwargs"]
print(list_var)  # --> ["args", "kwargs"]

# Changing the variable value without reassigning.
list_var.append("varargs")

print(list_var)  # --> ['args', 'kwargs', 'varargs']

# Declaring a variable with name 'fruit_prices' which holds an empty dictionary.
fruit_prices = {}

fruit_prices["Apple"] = 5
fruit_prices["Pear"] = 7

print(fruit_prices)  # --> {'Apple': 5, 'Pear': 7}

# Declaring three variables.
one, two, three = 1, 2, 3

print(one)  # --> 1
print(two)  # --> 2
print(three)  # --> 3

another_variable = "Variables are easy!"
print(another_variable[:-5] + "fun!")  # --> Variables are fun!

Harjutused

Teema paremaks omandamiseks on allpool mõned koodikirjutamise harjutused.

Esimese harjutusena on sul vaja luua erinevaid muutujaid ja omistada nendele vastavad väärtused.

# no pec # Create a variable number_of_books, equal to 5 # Print out variable number_of_books # Create a variable number_of_pencils, equal to 2 # Create a variable number, equal to number_of_books and number_of_pencils sum # Print out variable number # Create a variable number_of_books, equal to 5 number_of_books = 5 # Print out number_of_books print(number_of_books) # Create a variable number_of_pencils, equal to 2 number_of_pencils = 2 # Create a variable number, equal to number_of_books and number_of_pencils sum number = number_of_books + number_of_pencils # Print out variable number print(number) test_object("number_of_books") test_function("print") test_object("number_of_pencils") test_function("print") test_object("number") test_function("print") success_msg("Great job!")
Use the assignment operator (=) to create the variable number_of_books. Use (+) to add two variables together.

Teise harjutusena on sul vaja luua muutuja, kuvada ekraanile selle tüüp, seejärel sellele muutujale uus väärtus omistada ning taaskord ekraanile kuvada selle tüüp.

# no pec # Create a variable bye, equal to "Good bye" # Print out the type of variable bye # Change variable bye equal to True # Print out the type of variable bye # Create a variable bye, equal to "Good bye" bye = "Good bye" # Print out the type of variable bye print(type(bye)) # Change variable bye equal to True bye = True # Print out the type of variable bye print(type(bye)) test_object("bye") test_function("print") test_function("type") test_object("bye") test_function("print") test_function("type") success_msg("Great job!")
Use type() function to return the type of the specified object.

Rohkem lugemist