3- Fonksiyonlar ve Modüller

Fonksiyonlar ve Modüller

1. Fonksiyon Tanımlama, Parametreler, Return İfadeleri

Fonksiyon Tanımlama:

Fonksiyonlar, kodun tekrar kullanılabilir parçalarını tanımlamak için kullanılır. def anahtar kelimesi ile tanımlanır.

python
def greet(name):
    print(f"Hello, {name}!")

Parametreler:

Fonksiyonlara veri geçmek için parametreler kullanılır. Yukarıdaki örnekte, name bir parametredir.

python
def add(a, b):
    return a + b

Return İfadeleri:

Fonksiyonlardan değer döndürmek için return ifadesi kullanılır. Fonksiyon çalışmayı bitirdiğinde, return ile belirtilen değer geri döner.

python
def multiply(x, y):
    result = x * y
    return result

Fonksiyon Kullanımı:

Fonksiyonları çağırmak için, fonksiyon adını ve gerekli argümanları yazarsınız.

python
result = add(5, 3)  # 8
print(result)

2. Modüller ve Modül Kullanımı

Modüller:

Modüller, Python kodunu organize etmek ve tekrar kullanılabilir hale getirmek için kullanılır. Bir modül, genellikle bir Python dosyasıdır (örneğin, mymodule.py).

Modül Oluşturma:

Bir modül oluşturmak için, bir Python dosyası oluşturun ve fonksiyonlar, sınıflar veya değişkenler tanımlayın.

# mymodule.py
def greet(name):
    return f"Hello, {name}!"
def add(a, b):
return a + b

Modül Kullanımı:

Bir modülü kullanmak için, import anahtar kelimesi ile modülü içe aktarabilirsiniz.

python
import mymodule
print(mymodule.greet("Alice")) # Hello, Alice!
print(mymodule.add(5, 3)) # 8

Modülün Bir Parçasını İçe Aktarma:

Sadece belirli bir fonksiyonu veya sınıfı içe aktarmak için from ... import ... ifadesini kullanabilirsiniz.

python
from mymodule import greet
print(greet("Bob")) # Hello, Bob!

Modül Adı Çakışmalarını Önleme:

Python'da, modül adları çakışmaması için genellikle her modülün benzersiz bir adı olması sağlanır. Ayrıca, __name__ özel değişkeni modülün doğrudan çalıştırılıp çalıştırılmadığını kontrol etmek için kullanılabilir.

# mymodule.py
if __name__ == "__main__":
    print("Bu modül doğrudan çalıştırıldı.")
else:
    print("Bu modül başka bir modül tarafından içe aktarıldı.")