الانتقال إلى المحتوى الرئيسي

كيفية استدعاء وظيفة فئة بايثون: خطوات وأمثلة بسيطة

في بيثون ، البرمجة الشيئية هي أداة قوية للغاية تسمح لك بإنشاء كود منظم للغاية وقابل لإعادة الاستخدام. أحد العناصر الرئيسية ل أوب هو فئة يمكن أن تحتوي على وظائف تسمى الأساليب. استدعاء وظيفة فئة قد تكون مختلفة قليلا من استدعاء وظيفة عادية ، ولكن مع بضع خطوات يمكن القيام به ببساطة شديدة.

الخطوة الأولى هي إنشاء مثيل للفئة. للقيام بذلك ، استخدم الكلمة الرئيسية للفئة واسم الفئة متبوعا بأقواس. على سبيل المثال ، دعنا ننشئ فئة شخص:

شخص الطبقة:

مواطنه قل_مرحبا (الذات):

طباعة ("مرحبا ، العالم!")

لإنشاء مثيل لفئة ، استخدم بناء الجملة التالي:

ع = شخص()

عند إنشاء مثيل لفئة ما ، يمكننا استدعاء طريقة لتلك الفئة باستخدام بناء جملة اسم المثيل.اسم_ الطريقة (). على سبيل المثال ، دعنا نتصل بـ قل مرحبا () طريقة لمثيل ص:

بعد الانتهاء من هذه الخطوات ، ستقوم وحدة التحكم بطباعة مرحبا ، العالم!، مما يعني دعوة ناجحة لوظيفة فئة الشخص.

  1. كيف يمكنني استدعاء وظيفة فئة بيثون?
  2. الخطوة 1: تحديد فئة مع وظيفة
  3. الخطوة 2: إنشاء مثيل للفئة
  4. الخطوة 3: استدعاء وظيفة الفصل
  5. تمرير الحجج إلى دالة فئة
  6. مثال على استدعاء وظيفة فئة بايثون
  7. سؤال وجواب
  8. كيف يمكنني استدعاء وظيفة فئة في بيثون?
  9. هل من الممكن استدعاء وظيفة فئة دون إنشاء مثيل?
  10. كيف يمكنني تمرير المعلمات إلى وظيفة فئة?
  11. يمكن استدعاء وظيفة فئة وظائف أخرى من نفس الفئة?
  12. ماذا سيكون نتيجة لاستدعاء وظيفة فئة إذا كان لا يعود قيمة?
  13. يمكن وظيفة فئة تغيير سمات مثيل فئة?

كيف يمكنني استدعاء وظيفة فئة بيثون?

لاستدعاء دالة فئة في بيثون ، تحتاج إلى إنشاء مثيل للفئة ثم استدعاء الدالة المقابلة من خلال هذا المثيل. فيما يلي الخطوات البسيطة لمساعدتك على تحقيق ذلك:

  1. تحديد فئة: أولا ، تحتاج إلى تحديد فئة وإعلان الوظائف اللازمة في ذلك. على سبيل المثال:

"'بايثون

فئة ميكلاس:

ديف وظيفتي (النفس):

طباعة ("مرحبا ، أنا وظيفة فئة!")

"`

  1. إنشاء مثيل للفئة: لإنشاء مثيل لفئة ، استخدم عامل التشغيل 'جديد' وتعيين مثيل لمتغير. على سبيل المثال:

"'بايثون

حالتي = ميكلاس()

"`

  1. استدعاء وظيفة الطبقة: الآن بعد أن أصبح لديك مثيل للفئة ، يمكنك استدعاء وظيفة الفئة باستخدام اسم المثيل ومشغل الوصول إلى عضو الفئة `.`. على سبيل المثال:

"'بايثون

وظيفتي()

"`

سيبدو الرمز الكامل كما يلي:

"'بايثون

فئة ميكلاس:

ديف وظيفتي (النفس):

طباعة ("مرحبا ، أنا وظيفة فئة!")

حالتي = ميكلاس()

وظيفتي()

"`

عند تنفيذ هذا الرمز ، سترى الإخراج:

"`

مرحبا ، أنا وظيفة فئة!

«`

لذلك كنت قد دعا بنجاح وظيفة فئة بيثون.

الخطوة 1: تحديد فئة مع وظيفة

قبل استدعاء وظيفة فئة ، تحتاج إلى تحديد الفئة نفسها. الفئة هي قالب أو نموذج يستخدم لإنشاء كائنات.

خطوات تعريف الفئة:

  • متبوعا باسم الفصل.
  • . تسمى هذه الوظيفة طريقة الفصل.

النظر في مثال:

فئة ميكلاس:

ديف وظيفتي (النفس):

طباعة ("مرحبا ، العالم!")

، الذي يعرض السطر " مرحبا ، العالم!".

لا يستخدم سمات الفئة وبالتالي لا يقبل معلمات إضافية.

الخطوة 2: إنشاء مثيل للفئة

بمجرد تحديد فئة في بيثون ، فإن الخطوة التالية هي إنشاء مثيل من هذه الفئة. مثيل فئة هو كائن معين سيكون له قيم السمات الخاصة به وسيكون قادرا على استدعاء الأساليب المحددة في الفصل.

لإنشاء مثيل لفئة في بايثون ، يتم استخدام استدعاء اسم الفئة ، متبوعا بأقواس. تقوم هذه المكالمة بإنشاء كائن جديد بناء على فئة معينة.

مثال على إنشاء مثيل لفئة:

شخص الطبقة:

ديف _ _ الحرف الأول _ _ (الذات ، الاسم ، العمر):

self.name = الاسم

النفس.العمر = العمر

شخص1 = شخص ("إيفان" ، 25)

في المثال أعلاه ، يتم إنشاء مثيل لفئة الشخص باسم "إيفان" وعمر 25 عاما. عند إنشاء مثيل لفئة ما ، يتم استدعاء طريقة _ _ _ _ _ _ (المهيئ) ، والتي تقوم بتهيئة سمات مثيل الفئة.

يمكنك أيضا إنشاء مثيلات متعددة للفئة:

شخص2 = شخص ("أليكسي" ، 30)

شخص3 = شخص ("أولغا" ، 45)

في هذه الحالة ، يتم إنشاء حالتين إضافيتين لفئة الشخص بأسماء وأعمار مختلفة.

يتيح لك إنشاء مثيلات فئة العمل مع الكائنات التي يمكن أن يكون لها حالاتها وسلوكياتها الخاصة. سيكون لكل مثيل من الفصل قيمه الخاصة للسمات وسيكون قادرا على استدعاء الأساليب المحددة في الفصل.

الخطوة 3: استدعاء وظيفة الفصل

بعد إنشاء كائن فئة ، يمكننا استدعاء الوظائف المحددة داخل تلك الفئة. لاستدعاء دالة فئة ، نستخدم بناء الجملة التالي:

كائن.وظيفة (الحجج)

هو اسم الوظيفة التي نريد الاتصال بها. يمكننا أيضا تمرير الوسيطات إلى الدالة المسماة عن طريق تحديدها بين قوسين.

النظر في مثال:

فئة القط:

ديف _ _ الحرف الأول__(الذات ، الاسم):

self.name = الاسم

مواطنه تحية (النفس):

طباعة (و " مرحبا ، اسمي {self.name}!")

مواطنه مواء (النفس):

طباعة ("مواء!")

القط = القط ("مورزيك")

القط.تحية () # الخلاصة: مرحبا ، اسمي مرزق!

القط.مواء () # الخلاصة: مواء!

.

مخرجات سلسلة بسيطة " مواء!".

وبالتالي ، يمكننا استدعاء أي وظائف محددة داخل الفصل لكائنات هذه الفئة.

تمرير الحجج إلى دالة فئة

في لغة برمجة بايثون ، يمكنك تمرير الوسائط إلى وظائف الفصل بنفس طريقة الوظائف العادية. عند إنشاء طرق فئة ، يتم تحديد الوسائط التي ستقبلها هذه الطرق. يمكن أن تكون الحجج مطلوبة أو اختيارية.

يتم الإعلان عن الوسائط المطلوبة في تعريف الطريقة وتمريرها عند استدعاء هذه الطريقة. على سبيل المثال:

فئة ميكلاس:

ديف طريقتي(الذات ، أر 1 ، أر 2):

#

رمز طريقة المرور

# إنشاء مثيل لفئة

أوبج = ميكلاس()

# استدعاء الأسلوب مع مرور الحجج

طريقتي (10 ، "سلسلة")

. عند استدعاء الطريقة ، يجب تمرير قيم هذه الوسائط.

يتم الإعلان عن الوسائط الاختيارية عن طريق تعيين القيم الافتراضية. إذا لم يتم تمرير أي قيمة لوسيطة اختيارية عند استدعاء الطريقة ، فسيتم استخدام القيمة الافتراضية. على سبيل المثال:

فئة ميكلاس:

ديف طريقتي (النفس ، أرغ 1 ، أرغ 2="الافتراضي"):

#

رمز طريقة المرور

# إنشاء مثيل

من أوبج = ميكلاس() فئة

# استدعاء الطريقة دون تمرير الوسيطة الثانية

طريقتي (10)

، سيتم استخدام القيمة الافتراضية.

لدى بايثون أيضا القدرة على تمرير الحجج بالكلمات الرئيسية. في هذه الحالة ، يمكنك تحديد الوسيطات بأي ترتيب عن طريق تحديد أسماء الوسيطات بنفسك. على سبيل المثال:

فئة ميكلاس:

ديف طريقتي(الذات ، أر 1 ، أر 2):

#

رمز طريقة المرور

# إنشاء مثيل

من أوبج = ميكلاس() فئة

# استدعاء طريقة مع تمرير الحجج عن طريق الكلمات الرئيسية

طريقتي (أر2= "سلسلة" ، أر1=10)

يتم تمرير الوسيطات ، ولكن لا يهم ترتيب الوسيطات ، حيث يتم تحديدها بواسطة الكلمات الرئيسية.

وهكذا ، في بيثون هناك عدة طرق لتمرير الحجج إلى وظيفة الطبقة: الوسائط المطلوبة والاختيارية ، والحجج ذات القيم الافتراضية ، والحجج التي تم تمريرها بواسطة الكلمات الرئيسية.

مثال على استدعاء وظيفة فئة بايثون

في بايثون ، تسمى الوظائف المحددة داخل الفصل بالطرق. يتم استخدام الطرق لتنفيذ العمليات المتعلقة ببيانات الفئة. Вот простой пример использования метода класса Python:

class Circle:

def __init__(self, radius):

self.radius = radius

def calculate_area(self):

return 3.14159 * self.radius ** 2

# Создание экземпляра класса Circle

circle = Circle(5)

# Вызов метода calculate_area()

area = circle.calculate_area()

print("Площадь круга равна:", area)

В этом примере определен класс Circle, который имеет метод calculate_area(). تأخذ طريقة حساب المنطقة () نصف قطر الدائرة من كائن الفئة الخاصة بها وتعيد مساحة الدائرة. نقوم بإنشاء مثيل لفئة نصف قطرها 5 واستدعاء طريقة حساب المنطقة () لحساب مساحة الدائرة. ثم نعرض النتيجة على الشاشة.

ستكون نتيجة هذا الرمز:

مساحة الدائرة هي: 78.53975

في هذا المثال ، نرى كيفية استدعاء طريقة فئة بايثون لإجراء العملية المطلوبة مع بيانات الفئة. تسمح لنا طرق الفصل بتنظيم الكود في كتل منطقية وإعادة استخدامه لكائنات مختلفة من الفصل.

سؤال وجواب

كيف يمكنني استدعاء وظيفة فئة في بيثون?

لاستدعاء دالة فئة في بيثون ، يجب عليك إنشاء مثيل للفئة واستدعاء الدالة باستخدام هذا المثيل.

هل من الممكن استدعاء وظيفة فئة دون إنشاء مثيل?

لا ، لا يمكن استدعاء دالة فئة دون إنشاء مثيل للفئة. تعمل وظيفة الفئة مع البيانات الخاصة بكل مثيل.

كيف يمكنني تمرير المعلمات إلى وظيفة فئة?

يتم تمرير المعلمات إلى وظيفة الفئة ، وكذلك إلى أي وظيفة أخرى ، من خلال الأقواس بعد اسم الوظيفة.

يمكن استدعاء وظيفة فئة وظائف أخرى من نفس الفئة?

نعم ، يمكن لوظيفة الفصل استدعاء وظائف أخرى من نفس الفئة من خلال استخدام الكلمة الرئيسية "الذات".

ماذا سيكون نتيجة لاستدعاء وظيفة فئة إذا كان لا يعود قيمة?

إذا لم ترجع دالة فئة قيمة ، فعند استدعائها ، تقوم بتنفيذ التعليمات البرمجية الخاصة بها ، ولكنها لا ترجع أي نتيجة.

يمكن وظيفة فئة تغيير سمات مثيل فئة?

نعم ، يمكن لوظيفة الفئة تغيير سمات مثيل فئة إذا كان لديها حق الوصول إلى هذه السمات وتعديلها من خلال الكلمة الرئيسية "الذات".