6. Python

6.1. Język strukturalny

  • Możliwe jest pisanie prostych skryptów

6.2. Język obiektowy

  • Wszystko jest obiektem

6.3. Język funkcyjny

>>> liczby = [1, 2, 3, 4, 5]
>>> potegi_dwojki = [2**n for n in liczby]
>>> potegi_dwojki
[2, 4, 8, 16, 32]

6.4. Dynamicznie typowany

  • Typy określane są w trakcie wykonania programu,

  • Z jednej strony swoboda, z drugiej wolniejsze oprogramowanie,

  • Brak kompilacji - błędy związane ze złym typem pojawiają się dopiero po uruchomieniu wadliwej linni kodu

miejsce = 43 # int
miejsce = "przy oknie" # str
print(miejsce)

W wyniku zostanie nadpisana zmienna (również typ się zmieni)

przy oknie

6.5. Garbage collector

  • Zarządza oczyszczaniem pamięci,

  • Oparty na algorytmie zliczającym ilość referencji na dany obiekt

6.6. Przekazywanie wartości przez referencje