Przekazywanie zmiennych przez wartość w Pythonie
W Pythonie wszystkie dane dzielą się na prymitywne (ciągi znaków, liczby) i złożone obiekty (listy, zbiory, słowniki itp.). Przy tym przekazywanie zmiennych każdego z typów ma swoje szczegóły. Na przykład, przez wartość można przekazać zmienne, należące tylko do prymitywnych typów danych.
Załóżmy, że mamy dwie zmienne. Pierwsza przechowuje wartość jeden, a druga zmienna jest równa pierwszej:
num1 = 1
num2 = num1
print(num2) # wyświetli 1
Jeśli po deklaracji drugiej zmiennej
nadpiszemy num1, to wartość
num2 pozostanie niezmieniona. Tłumaczy się to
faktem, że do num2 kopiowana jest tylko
wartość pierwszej zmiennej. I jakiekolwiek
kolejne zmiany, wprowadzone w num1
nie wpłyną na num2. Tutaj działa
przekazywanie zmiennej przez wartość:
num1 = 1
num2 = num1
num1 = 3
print(num2) # wyświetli 1
Jaki będzie wynik wykonania następującego kodu:
num1 = 10
num2 = num1
num1 = 5
print(num2)
Jaki będzie wynik wykonania następującego kodu:
num1 = 8
num2 = num1 - 2
print(num2)
Jaki będzie wynik wykonania następującego kodu:
txt1 = 'abcde'
txt2 = 'abcde'
txt1 = txt1.upper()
print(txt2)
Jaki będzie wynik wykonania następującego kodu:
txt1 = 'abcde'
txt2 = txt1
txt1 = txt1.title()
print(txt1)
print(txt2)