Apa sajakah jenis pengecualian dalam python?
Python menyediakan dua fitur yang sangat penting untuk menangani kesalahan tak terduga dalam program Python Anda dan menambahkan kemampuan debugging di dalamnya − Show
Daftar Pengecualian Standar − Sr. Tidak. Nama Pengecualian & Deskripsi1Pengecualian Kelas dasar untuk semua pengecualian 2Hentikan Iterasi Dibesarkan ketika metode next() dari sebuah iterator tidak menunjuk ke objek apapun 3SystemExit Dibesarkan oleh sys. keluar() fungsi 4StandardError Kelas dasar untuk semua pengecualian bawaan kecuali StopIteration dan SystemExit 5Kesalahan Aritmatika Kelas dasar untuk semua kesalahan yang terjadi untuk perhitungan numerik 6OverflowError Dimunculkan saat penghitungan melebihi batas maksimum untuk tipe numerik 7FloatingPointError Dibesarkan saat perhitungan floating point gagal 8ZeroDivisionError Dibesarkan saat pembagian atau modulo dengan nol terjadi untuk semua tipe numerik 9AssertionError Dibesarkan jika terjadi kegagalan pernyataan Asser 10AttributeError Dibesarkan jika terjadi kegagalan referensi atau penugasan atribut 11EOFError Dibesarkan ketika tidak ada input dari fungsi raw_input() atau input() dan akhir file tercapai 12KesalahanImpor Dibesarkan saat pernyataan impor gagal 13KeyboardInterupsi Dimunculkan saat pengguna menginterupsi eksekusi program, biasanya dengan menekan Ctrl+c 14Kesalahan Pencarian Kelas dasar untuk semua kesalahan pencarian 15IndexError Dibesarkan ketika indeks tidak ditemukan secara berurutan 16KeyError Dibesarkan ketika kunci yang ditentukan tidak ditemukan dalam kamus 17NameError Dibesarkan saat pengidentifikasi tidak ditemukan di namespace lokal atau global 18UnboundLocalError Dibesarkan saat mencoba mengakses variabel lokal dalam suatu fungsi atau metode tetapi tidak ada nilai yang ditetapkan untuknya 19Kesalahan Lingkungan Kelas dasar untuk semua pengecualian yang terjadi di luar lingkungan Python 20IOError Dimunculkan saat operasi input/output gagal, seperti pernyataan cetak atau fungsi open() saat mencoba membuka file yang tidak ada 21IOError Dibesarkan untuk kesalahan terkait sistem operasi 22Kesalahan sintaks Dibesarkan ketika ada kesalahan dalam sintaks Python 23IndentationError Dibesarkan saat lekukan tidak ditentukan dengan benar 24Sistem bermasalah Dibesarkan ketika interpreter menemukan masalah internal, tetapi ketika error ini ditemukan, interpreter Python tidak keluar 25SystemExit Dibesarkan ketika juru bahasa Python berhenti dengan menggunakan sys. keluar() fungsi. Jika tidak ditangani dalam kode, menyebabkan juru bahasa keluar 26TypeError Dibesarkan saat operasi atau fungsi dicoba yang tidak valid untuk tipe data yang ditentukan 27ValueError Dibesarkan ketika fungsi bawaan untuk tipe data memiliki tipe argumen yang valid, tetapi argumen tersebut memiliki nilai yang tidak valid yang ditentukan 28RuntimeError Dibesarkan ketika kesalahan yang dihasilkan tidak termasuk dalam kategori apa pun 29NotImplementedError Dibesarkan ketika metode abstrak yang perlu diterapkan di kelas yang diwariskan sebenarnya tidak diterapkan Pernyataan dengan PythonPenegasan adalah pemeriksaan kewarasan yang dapat Anda aktifkan atau nonaktifkan saat Anda selesai dengan pengujian program Cara termudah untuk memikirkan pernyataan adalah menyamakannya dengan pernyataan kenaikan-jika (atau lebih akurat, pernyataan kenaikan-jika-tidak). Ekspresi diuji, dan jika hasilnya salah, pengecualian akan dimunculkan Penegasan dilakukan oleh pernyataan penegasan, kata kunci terbaru untuk Python, diperkenalkan di versi 1. 5 Pemrogram sering menempatkan pernyataan di awal fungsi untuk memeriksa input yang valid, dan setelah pemanggilan fungsi untuk memeriksa output yang valid Pernyataan tegasSaat menemukan pernyataan penegasan, Python mengevaluasi ekspresi yang menyertainya, yang diharapkan benar. Jika ekspresi salah, Python memunculkan pengecualian AssertionError Sintaks untuk menegaskan adalah - assert Expression[, Arguments] Jika pernyataan gagal, Python menggunakan ArgumentExpression sebagai argumen untuk AssertionError. Pengecualian AssertionError dapat ditangkap dan ditangani seperti pengecualian lainnya menggunakan pernyataan try-exception, tetapi jika tidak ditangani, mereka akan menghentikan program dan menghasilkan traceback ContohBerikut adalah fungsi yang mengubah suhu dari derajat Kelvin menjadi derajat Fahrenheit. Karena nol derajat Kelvin sedingin itu, fungsi ditebus jika melihat suhu negatif − #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_ Ketika kode di atas dijalankan, menghasilkan hasil sebagai berikut - 32.0 451 Traceback (most recent call last): File "test.py", line 9, in print KelvinToFahrenheit(-5) File "test.py", line 4, in KelvinToFahrenheit assert (Temperature >= 0),"Colder than absolute zero!" AssertionError: Colder than absolute zero! Apa itu Pengecualian?Pengecualian adalah peristiwa yang terjadi selama eksekusi program yang mengganggu aliran normal dari instruksi program. Secara umum, ketika skrip Python menghadapi situasi yang tidak dapat diatasi, itu memunculkan pengecualian. Pengecualian adalah objek Python yang mewakili kesalahan Ketika skrip Python memunculkan pengecualian, itu harus segera menangani pengecualian jika tidak maka akan berhenti dan berhenti Menangani pengecualianJika Anda memiliki beberapa kode mencurigakan yang mungkin menimbulkan pengecualian, Anda dapat mempertahankan program Anda dengan mencoba kode mencurigakan tersebut. memblokir. Setelah mencoba. blokir, sertakan pengecualian. pernyataan, diikuti dengan blok kode yang menangani masalah seanggun mungkin SintaksisBerikut adalah sintaks sederhana try. kecuali. lain blok - try: You do your operations here; ...................... except ExceptionI: If there is ExceptionI, then execute this block. except ExceptionII: If there is ExceptionII, then execute this block. ...................... else: If there is no exception then execute this block. Berikut adalah beberapa poin penting tentang sintaks yang disebutkan di atas -
ContohContoh ini membuka file, menulis konten di file, dan keluar dengan anggun karena tidak ada masalah sama sekali − #!/usr/bin/python try: fh = open("testfile", "w") fh.write("This is my test file for exception handling!!") except IOError: print "Error: can\'t find file or read data" else: print "Written content in the file successfully" fh.close()_ Ini menghasilkan hasil berikut - Written content in the file successfully ContohContoh ini mencoba membuka file di mana Anda tidak memiliki izin menulis, sehingga menimbulkan pengecualian - #!/usr/bin/python try: fh = open("testfile", "r") fh.write("This is my test file for exception handling!!") except IOError: print "Error: can\'t find file or read data" else: print "Written content in the file successfully"_ Ini menghasilkan hasil berikut - Error: can't find file or read data Klausul kecuali dengan Tanpa PengecualianAnda juga dapat menggunakan pernyataan exception tanpa pengecualian yang didefinisikan sebagai berikut − try: You do your operations here; ...................... except: If there is any exception, then execute this block. ...................... else: If there is no exception then execute this block._ Pernyataan coba-kecuali semacam ini menangkap semua pengecualian yang terjadi. Menggunakan pernyataan coba-kecuali semacam ini tidak dianggap sebagai praktik pemrograman yang baik, karena ia menangkap semua pengecualian tetapi tidak membuat pemrogram mengidentifikasi akar penyebab masalah yang mungkin terjadi. Klausa kecuali dengan Beberapa PengecualianAnda juga dapat menggunakan pernyataan exception yang sama untuk menangani banyak exception sebagai berikut − try: You do your operations here; ...................... except(Exception1[, Exception2[,...ExceptionN]]]): If there is any exception from the given exception list, then execute this block. ...................... else: If there is no exception then execute this block._ Klausul coba-akhirnyaAnda dapat menggunakan akhirnya. memblokir bersama dengan mencoba. memblokir. Blok terakhir adalah tempat untuk meletakkan kode apa saja yang harus dieksekusi, baik blok coba memunculkan pengecualian atau tidak. Sintaks dari pernyataan try-finally adalah − ini #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_0 Anda tidak dapat menggunakan klausa lain juga bersama dengan klausa akhirnya Contoh#!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_1 Jika Anda tidak memiliki izin untuk membuka file dalam mode penulisan, maka ini akan menghasilkan hasil sebagai berikut – Error: can't find file or read data Contoh yang sama dapat ditulis lebih bersih sebagai berikut − #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_3 Ketika pengecualian dilemparkan ke blok try, eksekusi segera diteruskan ke blok finally. Setelah semua pernyataan di blok akhirnya dieksekusi, pengecualian dimunculkan lagi dan ditangani dalam pernyataan kecuali jika ada di lapisan berikutnya yang lebih tinggi dari pernyataan coba-kecuali Argumen PengecualianPengecualian dapat memiliki argumen, yang merupakan nilai yang memberikan informasi tambahan tentang masalah tersebut. Isi argumen bervariasi berdasarkan pengecualian. Anda menangkap argumen pengecualian dengan menyediakan variabel dalam klausa kecuali sebagai berikut - #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_4 Jika Anda menulis kode untuk menangani satu pengecualian, Anda dapat membuat variabel mengikuti nama pengecualian dalam pernyataan kecuali. Jika Anda menjebak beberapa pengecualian, Anda dapat membuat variabel mengikuti tupel pengecualian Variabel ini menerima nilai pengecualian yang sebagian besar mengandung penyebab pengecualian. Variabel dapat menerima satu nilai atau beberapa nilai dalam bentuk tupel. Tuple ini biasanya berisi string error, nomor error, dan lokasi error ContohBerikut adalah contoh untuk satu pengecualian − #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_5 Ini menghasilkan hasil berikut - #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_6 Meningkatkan PengecualianAnda dapat meningkatkan pengecualian dengan beberapa cara menggunakan pernyataan kenaikan. Sintaks umum untuk pernyataan kenaikan adalah sebagai berikut Sintaksis#!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_7 Di sini, Pengecualian adalah tipe pengecualian (misalnya, NameError) dan argumen adalah nilai untuk argumen pengecualian. Argumennya opsional; Argumen terakhir, traceback, juga opsional (dan jarang digunakan dalam praktik), dan jika ada, adalah objek traceback yang digunakan untuk pengecualian ContohPengecualian dapat berupa string, kelas, atau objek. Sebagian besar pengecualian yang dimunculkan oleh inti Python adalah kelas, dengan argumen yang merupakan turunan dari kelas. Mendefinisikan pengecualian baru cukup mudah dan dapat dilakukan sebagai berikut − #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_8 Catatan. Untuk menangkap pengecualian, klausa "kecuali" harus mengacu pada pengecualian yang sama yang dilemparkan baik objek kelas atau string sederhana. Misalnya, untuk menangkap pengecualian di atas, kita harus menulis klausa kecuali sebagai berikut - #!/usr/bin/python def KelvinToFahrenheit(Temperature): assert (Temperature >= 0),"Colder than absolute zero!" return ((Temperature-273)*1.8)+32 print KelvinToFahrenheit(273) print int(KelvinToFahrenheit(505.78)) print KelvinToFahrenheit(-5)_9 Pengecualian Buatan PenggunaPython juga memungkinkan Anda membuat pengecualian sendiri dengan menurunkan kelas dari pengecualian bawaan standar Berikut adalah contoh yang terkait dengan RuntimeError. Di sini, kelas dibuat yang merupakan subkelas dari RuntimeError. Ini berguna saat Anda perlu menampilkan informasi yang lebih spesifik saat pengecualian tertangkap Di blok coba, pengecualian yang ditentukan pengguna dimunculkan dan ditangkap di blok kecuali. Variabel e digunakan untuk membuat turunan dari kelas Networkerror Apa saja 3 jenis pengecualian utama di Python?Terutama ada tiga jenis kesalahan yang dapat dibedakan dalam Python. kesalahan sintaks, pengecualian, dan kesalahan logis .
Apa saja 3 jenis pengecualian?Ada tiga jenis pengecualian— pengecualian yang diperiksa, kesalahan, dan pengecualian runtime .
Apa saja jenis pengecualian *?Pengecualian diperiksa . lempar kata kunci. Ditampilkan dengan jelas dalam output bahwa program melempar pengecualian selama proses kompilasi. . blok coba-tangkap. . SQLException. . IOException. . ClassNotFoundException. . PermintaanTargetException. . NullPointerException. . ArrayIndexOutofBound Apa sajakah cara berbeda untuk menangani pengecualian di Python?Pertama, klausa coba (pernyataan antara kata kunci coba dan kecuali) dijalankan Jika tidak ada pengecualian yang terjadi, klausa pengecualian dilewati dan eksekusi pernyataan try selesai Jika pengecualian terjadi selama eksekusi klausa try, klausa lainnya akan dilewati |