OOP di Python
OOP di Python adalah pendekatan pengaturcaraan yang memfokuskan pada penggunaan objek dan kelas sama seperti bahasa pengaturcaraan umum yang lain. Objek boleh menjadi entiti dunia nyata. Python membolehkan pembangun mengembangkan aplikasi menggunakan pendekatan OOP dengan fokus utama pada kebolehgunaan semula kod. Sangat mudah untuk membuat kelas dan objek di Python.
Apa itu Kelas?
Kelas di Python adalah kumpulan data dan fungsi yang logik. Ini memberikan kebebasan untuk membuat struktur data yang mengandungi kandungan sewenang-wenang dan oleh itu mudah diakses.
Sebagai contoh, bagi mana-mana pekerja bank yang ingin mengambil butiran pelanggan secara dalam talian akan pergi ke kelas pelanggan , di mana semua atributnya seperti perincian transaksi, butiran pengeluaran dan deposit, hutang tertunggak, dan lain-lain akan disenaraikan.
Dalam tutorial ini, kita akan belajar,
- Cara menentukan kelas Python
- Bagaimana Warisan berfungsi
- Pembina Python
Cara menentukan kelas Python
Untuk menentukan kelas anda perlu mempertimbangkan perkara berikut
Langkah 1) Di Python, kelas ditentukan oleh kata kunci "Kelas"
class myClass():
Langkah 2) Di dalam kelas, anda boleh menentukan fungsi atau kaedah yang menjadi sebahagian daripada kelas ini
def method1 (self):print "Guru99"def method2 (self,someString):print "Software Testing: + someString
- Di sini kita telah menentukan kaedah1 yang mencetak "Guru99."
- Kaedah lain yang telah kami tetapkan adalah kaedah2 yang mencetak "Pengujian Perisian" + SomeString. SomeString adalah pemboleh ubah yang disediakan oleh kaedah panggilan
Langkah 3) Segala-galanya di dalam kelas adalah lekukan, seperti kod dalam fungsi, gelung, jika pernyataan, dan lain-lain.
CATATAN : Mengenai penggunaan "diri" di Python
- Hujah diri merujuk kepada objek itu sendiri. Oleh itu penggunaan kata diri. Jadi di dalam kaedah ini, diri akan merujuk kepada contoh spesifik objek ini yang sedang dikendalikan.
- Self adalah nama yang disukai oleh konvensyen oleh Pythons untuk menunjukkan parameter pertama kaedah contoh di Python. Ia adalah sebahagian daripada sintaks Python untuk mengakses anggota objek
Langkah 4) Untuk membuat objek kelas
c = myClass()
Langkah 5) Untuk memanggil kaedah dalam kelas
c.method1()c.method2(" Testing is fun")
- Perhatikan bahawa apabila kita memanggil kaedah1 atau kaedah2, kita tidak perlu memberikan kata kunci diri. Itu secara automatik dikendalikan oleh kami oleh masa operasi Python.
- Python runtime akan memberikan nilai "diri" apabila anda memanggil kaedah instance sebagai contoh, sama ada anda memberikannya dengan sengaja atau tidak
- Anda hanya perlu mengambil berat tentang hujah bukan diri
Langkah 6) Inilah kod yang lengkap
# Contoh fail untuk bekerja dengan kelaskelas myClass ():kaedah def1 (diri):cetak ("Guru99")kaedah def2 (self, someString):cetak ("Ujian Perisian: + someString)def utama ():# latih kaedah kelasc = myClass ()c. kaedah1 ()c.metode2 ("Pengujian itu menyeronokkan")jika __nama __ == "__main__":utama ()
Bagaimana Warisan berfungsi
Inheritance adalah ciri yang digunakan dalam pengaturcaraan berorientasikan objek; ia merujuk kepada mendefinisikan kelas baru dengan pengubahsuaian yang kurang atau tidak kepada kelas yang ada. Kelas baru dipanggil kelas turunan dan dari kelas yang diwarisinya disebut asas . Python menyokong warisan; ia juga menyokong pelbagai warisan . Kelas boleh mewarisi sifat dan kaedah tingkah laku dari kelas lain yang disebut kelas subkelas atau pewaris.
Sintaks Python Inheritance
class DerivedClass(BaseClass):body_of_derived_class
Langkah 1) Jalankan kod berikut
# Contoh fail untuk bekerja dengan kelaskelas myClass ():kaedah def1 (diri):cetak ("Guru99")classClass child (myClass):#def kaedah1 (diri):# myClass.mode1 (diri);#print ("kaedah ChildClass1")kaedah def2 (diri):cetak ("kaedah ChildClass2")def utama ():# latih kaedah kelasc2 = kelas kanak-kanak ()c2. kaedah1 ()# c2. kaedah2 ()jika __nama __ == "__main__":utama ()
Perhatikan bahawa dalam childClass, kaedah1 tidak ditentukan tetapi ia berasal dari myClass induk. Hasilnya adalah "Guru99."
Langkah 2) Uncomment Line # 8 & 10. Jalankan kod
Sekarang, kaedah 1 ditakrifkan dalam childClass dan output "childClass Method1" ditunjukkan dengan betul.
Langkah 3) Garis Uncomment # 9. Jalankan kod
Anda boleh memanggil kaedah kelas induk menggunakan sintaks
ParentClassName.MethodName(self)
Dalam kes kami, kami memanggil, myClass.method1 (diri) dan Guru99 dicetak seperti yang diharapkan
Langkah 4 ) Garis Uncomment # 19. Jalankan kod.
Kaedah 2 kelas kanak-kanak dipanggil dan "kaedahClass2 anak" dicetak seperti yang diharapkan.
Pembina Python
Pembina adalah fungsi kelas yang memantapkan objek ke nilai yang telah ditentukan.
Ia bermula dengan garis bawah dua (_). Kaedah __init __ ()
Dalam contoh di bawah ini kita mengambil nama pengguna menggunakan konstruktor.
class User:name = ""def __init__(self, name):self.name = namedef sayHello(self):print("Welcome to Guru99, " + self.name)User1 = User("Alex")User1.sayHello()
Keluaran akan:
Selamat datang ke Guru99, Alex
Python 2 Contoh
Kod di atas adalah contoh Python 3, Sekiranya anda ingin menjalankan di Python 2 sila pertimbangkan untuk mengikuti kod ini.
# How to define Python classes# Example file for working with classesclass myClass():def method1(self):print "Guru99"def method2(self,someString):print "Software Testing: + someStringdef main():# exercise the class methodsc = myClass ()c.method1()c.method2(" Testing is fun")if __name__== "__main__":main()#How Inheritance works# Example file for working with classesclass myClass():def method1(self):print "Guru99"class childClass(myClass):#def method1(self):#myClass.method1(self);#print "childClass Method1"def method2(self):print "childClass method2"def main():# exercise the class methodsc2 = childClass()c2.method1()#c2.method2()if __name__== "__main__":main()
Ringkasan:
"Kelas" adalah pengelompokan fungsi dan data yang logik. Kelas Python menyediakan semua ciri standard Pengaturcaraan Berorientasikan Objek.
- Mekanisme pewarisan kelas
- Kelas turunan yang mengatasi kaedah apa pun dari kelas asasnya
- Kaedah boleh memanggil kaedah kelas asas dengan nama yang sama
- Kelas Python ditakrifkan dengan kata kunci "kelas" itu sendiri
- Di dalam kelas, anda boleh menentukan fungsi atau kaedah yang menjadi sebahagian daripada kelas
- Segala-galanya dalam kelas adalah lekukan, seperti kod dalam fungsi, gelung, jika pernyataan, dll.
- Hujah diri dalam Python merujuk kepada objek itu sendiri. Self adalah nama yang disukai oleh konvensyen oleh Pythons untuk menunjukkan parameter pertama kaedah contoh di Python
- Python runtime akan memberikan nilai "diri" secara automatik apabila anda memanggil kaedah instance sebagai contoh, sama ada anda memberikannya dengan sengaja atau tidak
- Di Python, kelas boleh mewarisi atribut dan kaedah tingkah laku dari kelas lain yang disebut kelas subkelas atau pewaris.