Yazılımda parametre fonksiyon nedir? ne değildir? ve Win7 Güncelleme Sorunu

Merhaba
Sevgili arakdaşlar yazılım öğrenmeye yeni başladım fakat anlamadığım bir durum var şimdi parametre nedir fonksiyon nedir ? örneğin if, else, pow(), elif, type(), len() vs. bunlar komut mu, parametre mi, fonksiyon mudur ? nedir? ne değildir? internetten baktım fakat aydınlatmadan çok kafa karıştırcıydı ve onları okumakla kafam iyice karıştı bildiğimi unutturdu. Bunu uzman deneyimli bir hocamız kısa öz ve anlaşılır bir şekilde açıklayabilirse çok güzel olur.
Ve bu yersiz konuya da değindiğim için çok özür dilerim fakat nette ki çözümler sonuç vermediği için sizlere de sormak istedim ben laptob’a 2 işletim sistemi kurdum windows7 professional ve ubuntu.
Ubuntu da daha bir sıkıntıyla karşılaşmadım fakat win7 de güncellemeler olmuyor internetten araştırdım oradaki çözümleri de denedim ama olmadı.
Bu iki konuda deneyimli uzman bir hocamız yardımcı olabilirse çok makbule geçer ve şimdiden çok teşekkür ederim.

1 Beğeni

Merhaba.

istanbul-coders’taki sorunuza bir cevap yazdım. Kısacası Fırat Özgül’ün şuradaki belgelerini okumanızı öneririm: https://belgeler.yazbel.com/python-istihza/

İyi çalışmalar.

1 Beğeni

Hocam zaten python istihzadan çalışıyorum fakat parametrelerin fonksiyonların kodların arasındaki ilişkiyi anlamadım diğer formlarda da okudum fakat sade ve öz olmadığından da kafammı çok karıştırdı belki bilmediğimdendir derslere devam edersem belki ilerde daha iyi anlıyacağım fakat titizlik gösterdiğim birşey olunca ilerliyemiyorum kafam sürekli orada kalıyor takıntı yaptım fonksiyon nedir parametre nedir kod nedir bunlar arasında ki ilişki nedir tanımlardan bahsetmiyorum yani nasıl desem yazılım da parametre şey nedir veya fonksiyon nedir biri benden fonksiyonu veya parametreyi veya kodu göster dediğinde ben neyi gösterecem neyi göstermiyecem bunların arasındaki ilişkiyi nasıl gösterecem açıkcası ben parametreyi ve diğerlerinin nolduğunu bilemediğimden bunların arasındaki ilişkiyi anlayamıyorum arasındaki ilişkileri bilemdiğimden de değişkenlerde uygulama kısmında takılı kalmış durumdayım fırsat buldukça da çalışıyorum çalışmalarımı da istihza pdf de yürütüyorum not alarak. Dediğim gibi bunların arsındaki ilişkiyi anlayamadım belki önceki günlerde anlamıştım fakat tekrar ve pratik yapmadığımdan dolayı unutmuş da olabilirim bu konu da uzman olan bir hocamız açıklarsa daha kalıcı olur düşüncesiyle konu olarak açtım
ilgilendiğiniz için çok çok teşekkür ederim @ismailarilik

Merhaba,

if, else, elif, while, for…: Bunlar Python’daki anahtar kelimelerdir.
Anahtar Kelimelerin Listesi: https://docs.python.org/3.5/reference/lexical_analysis.html#keywords

pow(), type(), len(), print()…: Bunlar ise birer fonksiyondur.
Gömülü Fonksiyonların Listesi: https://docs.python.org/3.5/library/functions.html#built-in-functions

Ayrıca lambda isimli bir başka fonksiyon çeşidi daha var. istihza’nın rehber dökümanında lambda konusu da işlenmiş.

Bir fonksiyonun parametreleri ise aşağıdaki gibi olur.

print("Hello world", end="")

# Ayrıca kendimiz de fonksiyon yazabiliriz.
# Aşağıdaki örneğe göz atmanızı tavsiye ederim.

def fonksiyon(*args): return args
# Fonksiyon tanıtmak istendiğinde def veya lambda anahtar kelimeleri kullanılır.
# Tanımladığımız fonksiyonların çağrılma şekli tıpkı print() fonksiyonu gibidir.
# fonksiyon(*args) -> fonksiyon(args[0], args[1],...)
# Fonksiyonun argümanları return anahtar kelimesiyle geri döndürdüğüne dikkatinizi çekmek isterim.
# Şayet return anahtar kelimesini kullanmasaydık, aşağıdaki tanımlamayı yapamazdık.


x, y = fonksiyon(1, 2)  #  <---> x, y = 1, 2 gibi

Yukarıdaki print() fonksiyonu içinde bulunan “Hello world” ifadesi argümandır, Pythonca’da *args olarak isimlendirilir, arguments’in kısaltılmışıdır. Tuple (demet) tipinde bir veridir. end="" ifadesi ise anahtar kelime argümanıdır, veri tipi sözlüktür. Pythonca’da **kwargs olarak isimlendirilir, keyword arguments’in kısaltılmışıdır. Her ikisi de print() fonksiyonunun parametresidir. Sınıf, fonksiyon, parametre, değişken, anahtar kelime, isim alanları gibi bileşenlerden oluşup Python’ca anlaşılır yapıda olan her şey kodu oluşturur.

Bir fonksiyonun parametreleri bir çok veri tipinde olabilir ve çokça parametre tanımlayabiliriz. Parametre tanımlamasına tekrar bakacak olursak:


def baska_bir_fonksiyon(arg1, arg2, arg3, arg4, arg5, arg6):
    return arg1, arg2, arg3, arg4, arg5, arg6
# Gördüğünüz gibi fonksiyonumuzun parametreleri çoğaldıkça
# yazılar çoğalıyor.
# Yazılar daha az yer kaplasın diye *args ve **kwargs kullanılır. 
# *args argüman parametrelerini,
# **kwargs ise anahtar kelimeli argüman parametrelerini temsil eder.
# Yukarıdaki fonksiyon o halde aşağıdaki gibi yazılsa Pythonic bir yazı olur.
# Bu yazım türü de aynı yukarıdaki fonksiyonun yaptığı işi yapar.

def baska_bir_fonksiyon(*args): return args

# Kwargs sözlük tipinde bir veri geri döndürüyordu:

def f(*args, **kwargs):
    return args, kwargs.values()


print(f("ali", "veli", a=1, b=2))

# "ali" ve "veli" argüman parametreleridir.
# a ve b de anahtar kelimeli argüman parametreleridir.

# Dilerseniz bu anahtar kelimeli argümanlar sizin tarafınızdan belirlenebilir:

def fonksiyon(*args, **kwargs):
    return args[0], kwargs["geri_doner"]
# Hangisinin geri döndürülmesi gerektiğini siz seçersiniz...

print(fonksiyon(
    "1",
    "a",
    geri_donmez="value1",
    geri_doner=10)
)

1 Beğeni

@dildeolupbiten Hocam çok çok teşekkür ederim müteşekkirim benimde istediğim bilmek istediğim buydu bunların hepsini not alıyorum gerçekten çok teşekkür ederim dersime kaldığım yerden devam edebileceğim bu örneğiniz gerçekten çok yardımcı, bilgilendirici ve faydalı oldu.
Gösterdiğiniz ilgi için gerçekten çok teşekkür ederim verdiğniz bilgi beni mutlu etti umarım sizde yardımcı olduğunuz için mutlu olmuşsunuzdur umarım sizin ve formdaki diğer Hocaların kafasını şişirmemişimdir umarım yazılımda bende uzmanlaştığım da bende böyle açıklayıcı sade öz bir şekilde başkalarına yardımcı olurum
Tekrar dan çok çokkk teşekkür ederim Hayrlı Akşamlar.

Rica ederim.

Fonksiyonlarda kullanılan “yield” isminde başka bir anahtar kelime daha var. Bir gün bu anahtar kelimenin, bir fonksiyonun içinde kullanıldığını görebilirsiniz. Örnekler üzerinden ne işe yaradığını, return ile arasında nasıl bir fark olduğunu anlatmaya çalışayım.

# Aşağıdaki fonksiyonu çağırırsak n'e kadar olan
# sayıları geri döndüremeyiz.

def f(n):
    for i in range(n):
        return i


print(f(10))

# Halbuki Python'a verdiğimiz komutun Türkçesi şuna benziyor:
# n'e kadar olan her sayıyı geri döndür.
# for döngüsü içindeki return, döngü tamamlanana kadar,
# döngü sayesinde üretilen değerleri tek tek geri dönderemez.
# n'e kadar olan sayıları geri döndürmek için başka
# yollar aramalıyız.


# Bu yollardan birisi aşağıdaki fonksiyonu kullanmak olabilir.

def g(n):
    return [i for i in range(n)]  # veya return [*range(n)]

# g() fonksiyonu aşağıdaki gibi de yazılabilir: 
# def g(n): return [i for i in range(n)]
# g() fonksiyonundan bir liste üreteci geri dönüyor.



print(g(10))


# Bir diğer yol ise; istediğimiz gibi çalışmayan f() fonksiyonundaki 
# return anahtar kelimesi yerine yield anahtar kelimesini yazmak olabilir.
# Yani fonksiyon bir üreteç gibi davranır.

def h(n):
    for i in range(n):
        yield i

# h() fonksiyonunun çıktısının g() fonksiyonunun çıktısıyla
# aynı olmasını istiyorsak bu sefer print() fonksiyonunun
# içindeki yazı aşağıdaki gibi değişir.


print([*h(10)])

# h() fonksiyonunun geri dönen değerleri for döngüsüyle alınabilir:

for j in h(n=10): 
    print(j)

# Bu kez g() fonksiyonunu döngüye sokalım:

 for k in g(n=10): 
    print(k)
1 Beğeni

33 tane deyim(komut) var bunları görmek için şu kodu yazabilirsiniz:

import keyword
print(keyword.kwlist)

Deyimler sonunda parantez kullanmadığınız ifadelerdir.
Parantez kullandığımız ifadeler fonksiyondur.
Parantezin içinde virgülle ayırdığımız ifadeler parametredir.

1 Beğeni

Bence kafanıza takmadan devam edin, zamanla kafanızdaki sorular yerine
oturacak.

Yine de basitçe tanımlarını yapmaya çalışayım.

Kod dediğimiz şey, program dosyasına yazdığınız her şeydir. Herhangi bir
satırı kod olarak gösterebilirsiniz.

Python’da şu bir fonksiyondur:

def topla(sayı1, sayı2):
    return sayı1 + sayı2

Bu fonksiyon parametre olarak iki sayı alır ve bu sayıların toplamını
döndürür. Fonksiyonları matematikteki fonksiyonlar gibi düşünebilirsiniz.
Fonksiyonlar belirli bir işlevi(burada toplamı işlemi) içlerinde
barındırırlar, aldıkları parametreler ile de bu işleve yön verebiliriz.

İyi çalışmalar.

17 Eyl 2017 Paz, 20:36 tarihinde, muzaffer noreply@forum.yazbel.com şunu
yazdı:

1 Beğeni

@dildeolupbiten, @hasser, @ismailarilik sizlere çok teşekkür ederim sağolun göstediğiniz ilgi ve verdiğiniz bilgi için çok müteşekkirim ben sizlerden bilgi aldım mutlu oldum umarm sizler de bana bilgi verirken mutlu olmuşsunuz tekrardan çok teşekkür ederim ve hayırlı akşamlar dilerim sağlıcakla.

Benim için en eğlenceli şey yeni bir şeyler öğrenmek, ikincisi de bir şeyler öğretmek. =) Faydalı olabildiğime sevindim. İyi günler dilerim.

2 Beğeni