Python'da Örnek ve Statik ve Sınıf Yöntemleri: Önemli Farklar

Python'da Örnek ve Statik ve Sınıf Yöntemleri: Önemli Farklar

Nesne yönelimli programlamaya (OOP) girdiğinizde Python yöntemleri genellikle kafa karıştırıcı olabilir. Bu kılavuz Python'daki üç ana yöntem türünü kapsar.





Python'da 3 Tür Yöntem

Python'da üç tür yöntem vardır: örnek yöntemler , statik yöntemler , ve sınıf yöntemleri .





Temel Python betiklerini kodlamak için her zaman farklılıkları bilmek gerekli değildir, ancak bir kez OOP'ye geçtiğinizde, farklılıklar büyük bir değişiklik yapabilir.





Python'da yeniyseniz veya herhangi bir şey yüklemek zorunda kalmadan sadece deneme yapmak istiyorsanız, bu sayfaları ziyaret ettiğinizden emin olun. çevrimiçi etkileşimli Python kabukları .

Başlamadan Önce: Dekoratör Kalıplarını Anlamak

Farklılıklara bakmadan önce, tasarım deseni olarak bilinen bir tasarım modelini anlamak önemlidir. dekoratör desen , ya da sadece bir dekoratör .



Dekoratörler kulağa karmaşık geliyor, ancak korkacak bir şey yok. Dekoratörler basitçe işlevlerdir. Bunları kendiniz yazabilir veya kitaplıklarda bulunanları veya Python standart kitaplığını kullanabilirsiniz.

Herhangi bir işlev gibi, dekoratörler de bir görevi yerine getirir. Buradaki fark, dekoratörlerin mantık uygulaması veya diğer işlevlerin davranışını değiştirmesidir. Kodu yeniden kullanmanın mükemmel bir yoludur ve mantığı bireysel kaygılara ayırmaya yardımcı olabilirler.





Dekoratör deseni, Python'un statik veya sınıf yöntemlerini tanımlamanın tercih edilen yoludur. Python'da şöyle görünüyor:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@staticmethod
def example_function():
''' This method is decorated! '''
print('I'm a decorated function!')

de = DecoratorExample()
de.example_function()

Dekoratörler, bir işlev veya sınıf bildiriminden hemen önce gelmelidir. ile başlarlar @ işaretidir ve normal yöntemlerden farklı olarak, argümanları iletmediğiniz sürece sonuna parantez koymanız gerekmez.





Birden fazla dekoratörü birleştirmek, kendi dekorunuzu yazmak ve bunları sınıflara uygulamak mümkündür, ancak bu örnekler için bunların hiçbirini yapmanız gerekmeyecektir.

chrome neden bu kadar çok işlemci kullanıyor?

Python'da Örnek Yöntemleri

Örnek yöntemler, Python sınıflarında en yaygın yöntem türüdür. Bunlar, örneklerinin benzersiz verilerine erişebildikleri için bu şekilde adlandırılır. Her biri bir araba sınıfından oluşturulmuş iki nesneniz varsa, her birinin farklı özellikleri olabilir. Farklı renklere, motor boyutlarına, koltuklara vb. sahip olabilirler.

Örnek yöntemleri olmalıdır öz parametre olarak, ancak bunu her seferinde iletmeniz gerekmez. Self, başka bir Python özel terimidir. Herhangi bir örnek yönteminde, sınıfınızda bulunabilecek herhangi bir veriye veya yönteme erişmek için self'i kullanabilirsiniz. Kendinden geçmeden onlara erişemeyeceksin.

Son olarak, örnek yöntemler en yaygın olanı olduğundan, dekoratöre gerek yoktur. Python'a aksini söylemediğiniz sürece, oluşturduğunuz herhangi bir yöntem otomatik olarak bir örnek yöntemi olarak oluşturulacaktır.

İşte bir örnek:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
self.name = 'Decorator_Example'
def example_function(self):
''' This method is an instance method! '''
print('I'm an instance method!')
print('My name is ' + self.name)

de = DecoratorExample()
de.example_function()

NS isim değişkene erişilir öz . Dikkat edin ne zaman örnek_işlev çağrılır, kendinizi içeri aktarmanız gerekmez---Python bunu sizin için yapar.

Python'da Statik Yöntemler

Statik yöntemler, bir şekilde bir sınıfla ilgili olan ancak herhangi bir sınıfa özgü verilere erişmesi gerekmeyen yöntemlerdir. kullanmak zorunda değilsin öz , ve bir örneği başlatmanıza bile gerek yok, sadece yönteminizi çağırabilirsiniz:

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@staticmethod
def example_function():
''' This method is a static method! '''
print('I'm a static method!')

de = DecoratorExample.example_function()

NS @staticmethod dekoratör, Python'a bu yöntemin statik bir yöntem olduğunu söylemek için kullanıldı.

Statik yöntemler, bir görevi ayrı ayrı gerçekleştiren yardımcı işlevler için mükemmeldir. Sınıf verilerine erişmeleri gerekmez (ve erişemezler). Tamamen bağımsız olmalı ve yalnızca argüman olarak iletilen verilerle çalışmalıdırlar. İki sayıyı birbirine eklemek için statik bir yöntem kullanabilir veya belirli bir dizeyi yazdırabilirsiniz.

Python'da Sınıf Yöntemleri

Sınıf yöntemleri, bilinmesi gereken üçüncü ve son OOP yöntemi türüdür. Sınıf yöntemleri, sınıfları hakkında bilgi sahibidir. Belirli örnek verilerine erişemezler, ancak diğer statik yöntemleri çağırabilirler.

Sınıf yöntemlerine gerek yok öz argüman olarak, ancak adında bir parametreye ihtiyaçları var cls . Bu sınıf , ve self gibi, Python tarafından otomatik olarak iletilir.

Sınıf yöntemleri kullanılarak oluşturulur. @classmethod dekoratör.

class DecoratorExample:
''' Example Class '''
def __init__(self):
''' Example Setup '''
print('Hello, World!')
@classmethod
def example_function(cls):
''' This method is a class method! '''
print('I'm a class method!')
cls.some_other_function()
@staticmethod
def some_other_function():
print('Hello!')

de = DecoratorExample()
de.example_function()

Sınıf yöntemleri, muhtemelen üçünün daha kafa karıştırıcı yöntem türleridir, ancak kullanımları vardır. Sınıf yöntemleri, sınıfın kendisini değiştirebilir; bu, daha büyük, daha karmaşık projeler üzerinde çalışırken kullanışlıdır.

Her Yöntem Türü Ne Zaman Kullanılır?

Python'daki yöntem türleri arasında seçim yapmak zor ve ürkütücü bir karar gibi görünebilir, ancak kısa sürede biraz pratik yaparak buna alışacaksınız.

spotify premium aile ne kadar

Eğlenmek için yalnızca küçük komut dosyaları yazsanız bile, Python'un başka bir OOP özelliğini öğrenmek harika bir beceridir ve kodunuzun sorunlarını gidermeyi ve gelecekte yeniden kullanımını kolaylaştırmaya yardımcı olabilir.

Özetle:

  1. Örnek Yöntemleri: En yaygın yöntem türü. Her örneğe özgü verilere ve özelliklere erişebilir.
  2. Statik Yöntemler: Sınıfta başka hiçbir şeye erişilemiyor. Tamamen kendi kendine yeten kod.
  3. Sınıf Yöntemleri: Sınıftaki sınırlı yöntemlere erişebilir. Sınıfa özel ayrıntıları değiştirebilir.

Bu eğitim biraz ileri düzeydeyse veya tam olarak aradığınız şey değilse, neden Python acemi seviyesinden profesyonel seviyeye geçmek için bu kurslara bir göz atmıyorsunuz? Bu 5 web sitesi Python'a yeni başlayanlar için de harika. Python'u fiziksel, gerçek bir dünya kullanımı istiyorsanız, ancak Raspberry Pi'den sıkıldıysanız, rehberimize ne dersiniz? Arduino'yu Python ile kontrol etmek ?

Paylaş Paylaş Cıvıldamak E-posta Komut İstemini Kullanarak Windows Bilgisayarınızı Nasıl Temizlersiniz

Windows PC'nizin depolama alanı azalıyorsa, bu hızlı Komut İstemi yardımcı programlarını kullanarak gereksiz dosyaları temizleyin.

Sonrakini Oku
İlgili konular
  • Programlama
  • Programlama
  • piton
Yazar hakkında Joe Coburn(136 Makale Yayınlandı)

Joe, İngiltere'deki Lincoln Üniversitesi'nden Bilgisayar Bilimleri mezunudur. Profesyonel bir yazılım geliştiricisi ve drone uçurmadığı veya müzik yazmadığı zamanlarda, genellikle fotoğraf çekerken veya video çekerken bulunabilir.

Joe Coburn'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Abone olmak için buraya tıklayın