Python modülleri, büyük ve karmaşık projelerde kodunuzu düzenlemek, tekrar kullanılabilir hale getirmek ve bakımı kolaylaştırmak için çok önemli araçlardır. Kendi modülünüzü yazmak, Python kodunuzu daha organize hale getirir ve başka projelerde de kullanabileceğiniz fonksiyonları veya sınıfları dışarıdan çağırmanıza imkan tanır. Bu yazıda, sıfırdan bir Python modülü yazmayı ve modülünüzü nasıl kullanacağınızı detaylı bir şekilde öğreneceğiz.
Python modülü, Python dilinde yazılmış bir dosyadır (genellikle .py
uzantılı) ve bu dosya içindeki fonksiyonlar, sınıflar, değişkenler ve diğer kod blokları başka Python dosyalarında kullanılabilir. Modüller, bir veya daha fazla işlevi bir arada barındıran dosyalardır ve bu sayede kodunuzu düzenli tutabilir ve tekrar kullanılabilir hale getirebilirsiniz.
Python modülünüzü yazmaya başlamak için öncelikle bir dosya oluşturmanız gerekir. Modül dosyanızda, işlevsellik ekleyeceğiniz fonksiyonlar ve sınıfları tanımlayabilirsiniz.
Bu örnekte, matematiksel işlemler yapan bir modül yazacağız. Modülümüzde dört işlem (toplama, çıkarma, çarpma, bölme) fonksiyonları yer alacak.
Bir dosya oluşturun, örneğin calculator.py
. Bu dosyada işlem fonksiyonlarını tanımlayacağız.
# calculator.py
# Toplama fonksiyonu
def add(x, y):
return x + y
# Çıkarma fonksiyonu
def subtract(x, y):
return x - y
# Çarpma fonksiyonu
def multiply(x, y):
return x * y
# Bölme fonksiyonu
def divide(x, y):
if y == 0:
raise ValueError("Bölme hatası: Sıfıra bölme yapılamaz.")
return x / y
Yukarıdaki calculator.py
dosyasındaki fonksiyonlar:
x
ve y
değerlerini toplar.x
ve y
değerlerini birbirinden çıkarır.x
ve y
değerlerini çarpar.x
ve y
değerlerini böler. Ancak, bölme işlemi sırasında sıfıra bölme hatası kontrol edilir.Modülünüzü yazdıktan sonra, bu modülü başka bir Python dosyasından kullanabilirsiniz. Python’da modül kullanmak için import
anahtar kelimesi kullanılır.
Örneğin, yazdığınız calculator.py
modülünü başka bir Python dosyasına dahil edelim ve fonksiyonları kullanalım.
# main.py
# calculator modülünü içe aktar
import calculator
# Fonksiyonları kullan
print("Toplama: ", calculator.add(10, 5)) # 15
print("Çıkarma: ", calculator.subtract(10, 5)) # 5
print("Çarpma: ", calculator.multiply(10, 5)) # 50
print("Bölme: ", calculator.divide(10, 5)) # 2.0
Bu kodda:
import calculator
: calculator.py
modülünü projemize dahil ederiz.Eğer modül isminin çok uzun olduğunu düşünüyorsanız, modülü içe aktarırken kısaltma (alias) kullanabilirsiniz. Bunun için as
anahtar kelimesini kullanabilirsiniz.
Örneğin:
# main.py
# calculator modülünü 'calc' olarak içe aktar
import calculator as calc
print("Toplama: ", calc.add(10, 5)) # 15
Burada, calculator
modülünü calc
olarak içe aktardık ve fonksiyonları calc
üzerinden çağırdık. Bu, modül ismini kısaltarak kodu daha okunabilir hale getirebilir.
Bazen modülünüzdeki sadece birkaç fonksiyonu kullanmak isteyebilirsiniz. Bunun için, modülün içindeki belirli fonksiyonları doğrudan içe aktarabilirsiniz:
# main.py
# Sadece add ve subtract fonksiyonlarını içe aktar
from calculator import add, subtract
print("Toplama: ", add(10, 5)) # 15
print("Çıkarma: ", subtract(10, 5)) # 5
Bu yöntemde, sadece kullanmak istediğiniz fonksiyonları import ederek, modülü daha verimli kullanabilirsiniz.
Eğer modülünüzde bir dosya çalıştırmak isterseniz, dosyanın başka bir dosya tarafından modül olarak kullanılabilir olmasını sağlamak için if __name__ == "__main__":
yapısını kullanabilirsiniz. Bu yapı, dosya yalnızca doğrudan çalıştırıldığında çalışacak, dışarıdan modül olarak import edilse bile çalışmayacaktır.
Örneğin:
# calculator.py
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
if y == 0:
raise ValueError("Bölme hatası: Sıfıra bölme yapılamaz.")
return x / y
# Bu modül doğrudan çalıştırıldığında test fonksiyonunu çalıştır
if __name__ == "__main__":
print("Toplama: ", add(10, 5)) # 15
print("Çıkarma: ", subtract(10, 5)) # 5
print("Çarpma: ", multiply(10, 5)) # 50
print("Bölme: ", divide(10, 5)) # 2.0
Buradaki if __name__ == "__main__":
bloğu, modülün yalnızca kendi başına çalıştırıldığında test işlemlerini yapmasını sağlar. Modül başka bir dosyaya import edildiğinde bu blok çalışmaz.
Eğer birden fazla modülünüz varsa, bunları bir paket haline getirebilirsiniz. Python paketleri, modülleri gruplayarak büyük projeleri organize etmek için kullanılır.
Örneğin, bir math_operations
adında bir paket oluşturalım:
math_operations/
__init__.py
add.py
subtract.py
multiply.py
divide.py
__init__.py
: Paket olarak işlev görmesini sağlayan özel bir dosya.Eğer yukarıdaki gibi bir paket oluşturduysanız, onu şu şekilde kullanabilirsiniz:
# main.py
from math_operations import add, subtract
print(add(10, 5)) # 15
print(subtract(10, 5)) # 5
Kendi Python modülünüzü yazmak, kodunuzu daha temiz, düzenli ve sürdürülebilir hale getirebilir. Modüller, büyük projelerde kodunuzu bölmenize, işlevlerinizi paylaşmanıza ve yeniden kullanmanıza olanak tanır. Python’da modüller ve paketler oluşturmak, projelerinizi daha profesyonel ve bakımı kolay hale getirecektir. Ayrıca, dış kütüphaneleri de modül olarak kullanmak ve geliştirilen modülleri başka projelere entegre etmek oldukça kolaydır.
Bu yöntemlerle script seviyesini artırarak, daha verimli ve modüler bir yazılım geliştirme süreci oluşturabilirsiniz.
UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025UNCATEGORİZED
08 Eylül 2025Veri politikasındaki amaçlarla sınırlı ve mevzuata uygun şekilde çerez konumlandırmaktayız. Detaylar için veri politikamızı inceleyebilirsiniz.