Python Modülleri ve Paketlerine Giriş
Python, basitliği ve okunabilirliğiyle bilinir, ancak en güçlü özelliklerinden biri modüler programlama yetenekleridir. Modüller ve paketler kullanarak Python, kodu yeniden kullanılabilir bileşenlere düzenlemenize olanak tanır. Bu makale, Python modülleri ve paketlerine kapsamlı bir giriş sağlayacak ve bunları etkili bir şekilde nasıl oluşturacağınızı, kullanacağınızı ve yöneteceğinizi açıklayacaktır.
Python Modülü Nedir?
Bir Python modülü, Python tanımları ve ifadeleri içeren bir dosyadır. Dosya adı, .py
eki eklenmiş modül adıdır. Modüller, ilgili işlevleri, sınıfları ve değişkenleri tek bir dosyada düzenlemeye yardımcı olur. Kodu yeniden kullanmak için bu modülleri diğer Python betiklerine aktarabilirsiniz.
# Example of a simple module: my_module.py
def greet(name):
return f"Hello, {name}!"
pi = 3.14159
Bir Modülü İçe Aktarma
Bir modülü kullanmak için, import
ifadesini kullanarak onu betiğinize aktarmanız gerekir. Aktarım yapıldıktan sonra, modülde tanımlanan işlevlere ve değişkenlere erişebilirsiniz.
# Importing and using a module
import my_module
print(my_module.greet("Alice"))
print(f"The value of pi is {my_module.pi}")
Bir Modülden Belirli Öğeleri İçe Aktarma
from
anahtar sözcüğünü kullanarak bir modülden belirli işlevleri veya değişkenleri de içe aktarabilirsiniz. Bu, bunları modül adı öneki olmadan doğrudan kullanmanıza olanak tanır.
# Importing specific elements
from my_module import greet, pi
print(greet("Bob"))
print(f"The value of pi is {pi}")
Python Paketi Nedir?
Bir Python paketi, bir dizin hiyerarşisinde düzenlenmiş modüllerin bir koleksiyonudur. Bir paket, boş olabilen veya paketi başlatmak için kullanılabilen __init__.py
adlı özel bir dosya içermelidir. Paketler, modülleri ad alanlarına düzenlemeye yardımcı olarak büyük kod tabanlarını yönetmeyi kolaylaştırır.
Bir Paket Oluşturma
Bir paket oluşturmak için şu adımları izleyin:
- Paket için bir dizin oluşturun.
- Dizinin içine
__init__.py
dosyasını ekleyin. - Modül dosyalarınızı dizine ekleyin.
Basit bir paket yapısının örneği şöyledir:
# Directory structure
my_package/
__init__.py
module1.py
module2.py
Bir Paketten İçe Aktarma
Bir paket oluşturulduktan sonra, nokta gösterimini kullanarak ondan modülleri içe aktarabilirsiniz. import
ifadesi, bir modülün tamamını veya içindeki belirli öğeleri içe aktarmak için kullanılabilir.
# Importing a module from a package
import my_package.module1
# Using a function from the imported module
my_package.module1.some_function()
# Importing a specific function from a module within a package
from my_package.module2 import another_function
another_function()
Python Standart Kütüphanesini Kullanma
Python, dosya işleme, matematik işlemleri, web geliştirme ve daha fazlası gibi çeşitli görevler için işlevsellik sağlayan yerleşik modüllerden oluşan büyük bir standart kütüphaneyle birlikte gelir. Bu standart kütüphane modülleri, tıpkı herhangi bir kullanıcı tanımlı modül gibi içe aktarılabilir.
# Using the math module from the standard library
import math
print(math.sqrt(16)) # Output: 4.0
# Using the datetime module from the standard library
from datetime import datetime
current_time = datetime.now()
print(current_time)
Üçüncü Taraf Paketlerini Yükleme ve Kullanma
Python'un ayrıca Python Paket Endeksi (PyPI) aracılığıyla erişilebilen zengin bir üçüncü taraf paketleri ekosistemi vardır. Bu paketleri pip
aracını kullanarak yükleyebilir ve projelerinize aktarabilirsiniz.
# Installing a package using pip
# pip install requests
# Importing and using a third-party package
import requests
response = requests.get('https://api.github.com')
print(response.status_code)
Çözüm
Modüller ve paketler, Python kodunu düzenlemek ve yeniden kullanılabilir bileşenler oluşturmak için temel araçlardır. Modüllerin ve paketlerin nasıl oluşturulacağını, içe aktarılacağını ve yönetileceğini anlamak, verimli, sürdürülebilir Python programları yazmak için çok önemlidir. Python'un kapsamlı standart kütüphanesi ve üçüncü taraf paketlerinin kullanılabilirliği sayesinde, programlarınızın işlevselliğini çok çeşitli görevleri ele alacak şekilde kolayca genişletebilirsiniz.