Sobes.tech
Middle

a = 4 b = [4] rezultat = (a, b) a = 5 b.append(5) Питање: која је вредност резултата након извршавања свих линија и зашто?

sobes.tech АИ

Одговор од АИ

Након извршавања свих редова, варијабла result ће бити једнака (4, [4, 5]).

Објашњење:

  • У реду result = (a, b) креира се кортеж, где је a број 4, а b референца на листу [4].
  • Затим, a се мења у 5, али то не утиче на већ креирани кортеж, јер су бројеви имутабилни објекти и у кортежу се чува вредност 4.
  • Позив b.append(5) мења листу b на месту, додајући елемент 5.
  • Пошто у кортежу постоји референца на листу b, промене у листи се одражавају и унутар кортежа.

Резултат:

result == (4, [4, 5])  # True