מחלקות בפייתון
מאמר זה מסביר מחלקות בפייתון.
YouTube Video
מחלקות בפייתון
בפייתון, מחלקה היא מושג מרכזי בתכנות מונחה עצמים (OOP) שמגדירה תבנית לארגון נתונים והשיטות שפועלות על נתונים אלו. באמצעות מחלקות, תוכלו ליצור מבני נתונים ולעטוף התנהגויות הקשורות לנתונים.
יסודות המחלקות
להגדרת מחלקה בפייתון, השתמשו במילת המפתח class
. להלן מבנה ושימוש של מחלקה בסיסית.
1# Class definition
2class MyClass:
3 # Constructor (initialization method)
4 def __init__(self, attribute):
5 self.attribute = attribute
6
7 # Method (member function)
8 def display_attribute(self):
9 print(self.attribute)
10
11# Creating an object
12obj = MyClass("Hello, World!")
13obj.display_attribute() # Outputs "Hello, World!"
רכיבי מחלקה
מאפיינים
מאפיינים של מחלקה מתייחסים לנתונים או למצב המוגדר של אובייקט. בדוגמה למעלה, attribute
הוא מאפיין של מופע.
שיטות
שיטות הן פונקציות המוגדרות בתוך מחלקה שמבצעות פעולות על אובייקטים. לדוגמה, שיטת display_attribute
שהוצגה למעלה.
בנאי (Constructor)
שיטת __init__
נקראת הבנאי ומופעלת כאשר יוצרים אובייקט. היא מאתחלת את המופע (Instance).
יצירה וניהול של אובייקטים
יצירת אובייקט ממחלקה נקראת אינסטנסיאציה (Instantiation). בדוגמה למעלה, MyClass
מועבר אינסטנסיאציה כדי ליצור את obj
. עם האובייקט שנוצר, ניתן לקרוא לשיטות שהוגדרו במחלקה או לגשת למאפיינים.
ירושה
מחלקות תומכות בירושה, המאפשרת ירושת מאפיינים ושיטות ממחלקות אחרות (מחלקות הורים או מחלקות בסיס). מחלקה חדשה (תת-מחלקה) יכולה להרחיב את המחלקה ההורה שלה כדי להוסיף פונקציונליות.
1# Parent class
2class Animal:
3 def speak(self):
4 print("Some sound")
5
6# Child class
7class Dog(Animal):
8 def speak(self):
9 print("Bark!")
10
11# Instantiation and method call
12dog = Dog()
13dog.speak() # Outputs "Bark!"
בדרך זו, מחלקות בפייתון מהוות אמצעי חזק לקישור לוגי בין נתונים ובין פרוצדורות. אלמנטים אחרים בתכנות מונחה עצמים, כמו פולימורפיזם ואנקפסולציה, יכולים להיות מיושמים גם כן באמצעות מחלקות.
מודולים בפייתון
מודול בפייתון הוא יחידה לארגון ושימוש חוזר בקוד פייתון. מודול הוא קובץ המכיל קוד פייתון, והפונקציות, המחלקות, המשתנים וכו' שבו יכולים להיות מיובאים ולהיות בשימוש על ידי קוד פייתון אחר. על ידי שימוש במודולים, יכולת השימוש החוזר בקוד משתפרת, והתוכניות הופכות לארגוניות יותר וקלות יותר לתחזוקה.
יצירת מודול
כדי ליצור מודול, עליך פשוט לשמור קובץ המכיל קוד פייתון. לדוגמה, שמירת קובץ עם התוכן הבא בשם my_module.py
הופכת אותו למודול.
1def greet(name):
2 return f"Hello, {name}!"
3
4pi = 3.14159
ייבוא מודול
כדי להשתמש במודול שנוצר בקובץ אחר, משתמשים בהצהרת import
.
1import my_module
2
3# Using functions and variables from my_module
4print(my_module.greet("Alice"))
5print(my_module.pi)
אתה יכול גם לייבא פונקציות או משתנים מסוימים.
1from my_module import greet, pi
2
3# Names can be used directly.
4print(greet("Bob"))
5print(pi)
כינויים למודולים
ניתן להקצות כינוי כאשר מייבאים מודול. זה הופך את הגישה למודול לקלה יותר בזמן כתיבת הקוד.
1import my_module as mm
2
3print(mm.greet("Charlie"))
4print(mm.pi)
מודולים מספריית התקן
פייתון מספקת מגוון רחב של מודולים מובנים מספריית התקן. אתה יכול לייבא ולהשתמש במודולים כגון המודול math
או המודול os
.
1import math
2
3print(math.sqrt(16))
4print(math.pi)
חבילות
חבילה היא אוסף של מספר מודולים המאורגנים במבנה ספריות. שימוש בחבילות מאפשר ארגון טוב יותר של קוד ותומך ביישומים מקיפים יותר.
השימוש במודולים ובחבילות בפייתון מאפשר כתיבת תוכניות מאורגנות ויעילות יותר.
תוכלו לעקוב אחר המאמר שלמעלה באמצעות Visual Studio Code בערוץ היוטיוב שלנו. נא לבדוק גם את ערוץ היוטיוב.