Skip to content

Instantly share code, notes, and snippets.

@anilkay
Last active February 28, 2020 12:35
Show Gist options
  • Save anilkay/3496a5cb93ae4397ce4b38726dad9fc3 to your computer and use it in GitHub Desktop.
Save anilkay/3496a5cb93ae4397ce4b38726dad9fc3 to your computer and use it in GitHub Desktop.
switcher = {
'bir': 1,
'iki': 2,
'uc': 3,
'dort':4,
}
switch_result=switcher.get("iki")
# Tam Tersini yapacak olursak
switcher_rev = {
1:"bir",
2: "iki",
3: "üç",
4:"dört",
}
switch_rev_result=switcher_rev.get(3) #yine çalışmakta.
#Birden çok veri yapısı ile kullanırsak
switcher_2 = {
1:"bir",
2: "iki",
3: "üç",
4:"dört",
'5':"beş",
'6':"alti",
'7':"yedi"
}
switch_result=switcher_2.get('5')
print(switch_result)
#fonksiyon da çağırabiliriz.
def some_calculation1(number):
return number*number+2
def some_calculation2(number):
return number*number+3
switcher_fonk = {
1:some_calculation1(1),
2:some_calculation2(2)
}
print(switcher_fonk.get(2))
#Biraz daha özelleştirilmiş bir şeyler yapacak olursak
switch_lambdali = {'bir': lambda x: x*120,
'iki': lambda x:some_calculation1(x),
'uc': 3,
}
print(switch_lambdali.get(5)) #600
print(switch_lambdali.get("iki")(7)) #52
#Görüldüğü şekilde istenen değere istenen işlem yaptırılabiliyor.
#Son olarak defaultu get içinde tanımlamamız gerekmektedir.
default=-999
print(switcher.get("dokuz",default))
#Dictionary"de tanımlanmayan her eleman -999 döndürecektir.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment