Links
Comment on page
📦

Modül ve Paketler

Python ile module ve package kodlama veya oluşturma

🚶‍♂️ Dosyalar Arasında Gezinme

  • 💡 Python ile dizinlerde bulunan kaynak kodları __init__.py dosyası ile belirtilir
  • 📢 Eğer dizinde __init__.py olmazsa kaynak kod dosyaları arasında import işlemi yapılmaz
  • 👨‍💻 Kaynak kodlardan import işlemleri için . karakteri kullanılır
    • . ile aynı dizindeki dosyaya
    • .. ile üst dizindeki dosyaya
    • ... ile 2 üst dizindeki dosyaya erişilir

📂 Modüller

Her python dosyasına modül denir.
  • import ile dahil edilirler
  • . ile içindekilere erişilir
  • Modül barındıran dizinler __init__.py dosyası içermelidir
  • __init__.py dosyası . yapısının kullanılmasına ve __all__=[''] yapısı ile hangi objelerin aktarılacağını belirler
__init__.py
"""GitBook yönetim paketi
"""
# aynı dizinde core.py isimli dosyaya erişme
from .core import (check_summary, create_changelog,
generate_description_section, generate_filelink_string,
get_summary_url_from_repo_url, read_summary_from_url)
# aynı dizinde entity.py isimli dosyaya erişme
from .entity import (ConfigOptions, IntegrationOptions, OptionParser, Options,
SubmoduleOptions)
# Sadece alttaki objeler dışarı aktarılır
__all__ = [
'IntegrationOptions',
'SubmoduleOptions',
'ConfigOptions',
'OptionParser',
'Options',
'generate_description_section',
'generate_filelink_string',
'get_summary_url_from_repo_url',
'read_summary_from_url',
'check_summary',
'create_changelog'
]

⭐ Modül Kullanım Örnekleri

  • Python aynı modülü birden fazla kez import etmez
    • Kullanıcı birden fazla import işlemi yaparsa tepki vermez
  • Baştan import edilmek istenirse imp.reload(modül) şeklinde kullanılır
✨ Tanımlama
🌟 Sık Kullanılanlar
🎲 Random
import math # Doğrudan öodülü alma
print("Pi: ", math.pi) # Pi: 3.141592653589793
import math as m # Modülü özel isimlendirme
print("Pi: ", m.pi) # Pi: 3.141592653589793
from math import pi # Modül içinden özel değeri alma
print("Pi: ", pi) # Pi: 3.141592653589793
from math import * # Modül içindeki her şeyi alma
print("Pi: ", pi) # Pi: 3.141592653589793
Modül
Odaklantığı İşlemler
math
Matematiksel
random
Rastgele
Numpy
Vektör işlemleri ve üst seviye matematik
Pandas
Veri işlemleri
Scipy
Scikit-Learn
Matplotlib
Grafik, çizim ve tablo işlemleri
Seaborn
TensorFlow
Makine Öğrenimi ve Deep Learning
tqdm
Progress Bar (Yüklenyior vs gibi işlemler için)
colorama
Terminal renklendirme
Fonksiyon
Açıklama
random()
0 <= sayı <= 1 kesirli sayı
randrange(<max>)
sayı <= max
randrange(<min>, <max>, <adım>)
min <= sayı <= max (adım kadar artar)

📁 Modül Dosyaları

Modül dosyalarının aranma yerleri:
  • Çalışılan dizin
  • Ortam değişkenlerindeki PYTHONPATH değişkeni değeri
  • Kuruluma bağlı varsayılan dizin
👁‍🗨 Sistemin Python Modüllerine Bakma
👀 Modül İçinde Tanımlanan İsimlere Bakma
>>> import sys
>>> sys.path
['',
'C:\\Python33\\Lib\\idlelib',
'C:\\Windows\\system32\\python33.zip',
'C:\\Python33\\DLLs',
'C:\\Python33\\lib',
'C:\\Python33',
'C:\\Python33\\lib\\site-packages']
>>> import example
>>> example.__name__
'example'
>>> a = 1 # Modül değişkenlerine ekleniyor
>>> b = "hello" # Modül değişkenlerine ekleniyor
>>> import math # Modül değişkenlerine ekleniyor
>>> dir()
['__builtins__', '__doc__', '__name__', 'a', 'b', 'math', 'pyscripter']
>>> dir(example)
['__builtins__',
'__cached__',
'__doc__',
'__file__',
'__initializing__',
'__loader__',
'__name__',
'__package__',
'add']

📦 Paketler (Package)

  • Birden fazla modülü içinde barındırır
  • . ile modüllere erişilir
    • Tekrar . atılırsa modülün içindekilere erişilir
import Game.Level.start
from Game.Level import start
from Game.Level.start import select_difficulty
2023 © Yunus Emre AK