Python'da global İfadesi

Diyelim ki bir i dış global değişkenimiz var. Ayrıca, bu değişkene bir ekleyen bir func fonksiyonu var:

pythoni = 0
def func():
  i += 1 # hata verecek
  return i

Kod çalıştırıldıktan sonra bir hata döndürülecek, çünkü dış koddaki global i ile, üzerine 1 eklenen ancak henüz tanımlanmamış olan yerel i arasında bir çakışma oluyor. Bu sorunu düzeltmek ve fonksiyonun özellikle global değişkenle çalışmasını sağlamak için global ifadesini kullanmak gerekir. Bu ifade, tanımlandığı mevcut kod bloğunun tamamı için geçerli olan bir bildirimdir.

Bir önceki örneği, fonksiyon gövdesinde global bildirimi yaparak yeniden yazalım:

pythondef func():
  global i
  i += 1
  return i
  
print(func()) # 1 yazdıracak
Задание 1

Aşağıdaki kodda bir programcı hata yapmış:

pythonnum = 4

def func():
  num *= 2
  return num

print(func())

Bu kodda sorun nedir? Kod yazarının hatasını bulun ve düzeltin.

Задание 2

Aşağıdaki kodda bir programcı hata yapmış:

pythonnum = 10

def func():
  num -= 3
  return i

print(func())

Bu kodda sorun nedir? Kod yazarının hatasını bulun ve düzeltin.