Apa itu AssertionError dengan Python?
Kesalahan pernyataan adalah konsep pemrograman yang terjadi saat programmer menulis atau membuat blok kode yang digunakan untuk mendeklarasikan kriteria atau kondisi yang harus dipenuhi sebelum modul dijalankan. Seperti kesalahan Python lainnya, kontrol ditransfer ke baris kode berikutnya jika kondisi yang ditentukan saat pernyataan dinyatakan benar. Jika salah, di sisi lain, kesalahan atau pengecualian dimunculkan, dan program dihentikan. Pernyataan assert dapat digunakan dalam berbagai bahasa pemrograman dengan sintaks spesifiknya karena tidak bergantung pada bahasa. Ini adalah subclass atau turunan dari kelas Exception. Python AssertionError memiliki sintaks berikut:
Sintaksis: tegaskan kondisi, error_message(opsional)
Contoh
Kami akan memasukkan usia seseorang sebagai masukan, dan jika kurang dari nol, konsol akan memunculkan kesalahan pernyataan.
Nah, bagaimana jika kita memasuki usia kurang dari 0?
Men-debug kode Anda menggunakan metode ini lebih sederhana, sehingga lebih mudah untuk menemukan kesalahan dan memperbaiki bug dalam program.
Bagaimana AssertionError Bekerja di Python
Bahasa Python menyertakan pernyataan tegas yang dapat digunakan untuk menghasilkan keluaran pesan kesalahan sederhana dengan pernyataan logis. Saat pernyataan pernyataan gagal, 'pengecualian' AssertionError dimunculkan. Di Python, kelas pengecualian diturunkan dari kelas BaseException. Kelas BaseException, yang juga merupakan kelas dasar dari kelas AssertionError, adalah tempat asal kelas Exception. Harus selalu ada kode penanganan pengecualian yang sesuai untuk menangani kegagalan pernyataan tegas setiap kali digunakan. Pengendali pengecualian default di Python akan mencetak pesan kesalahan yang ditulis pemrogram, tetapi kesalahan juga dapat ditangani atau diselesaikan tanpa pesan kesalahan.
Menerapkan AssertionError dengan Python
Berikut adalah beberapa contoh AssertionError dengan Python:
Contoh
Dalam contoh ini, kita akan menulis program Python untuk menampilkan AssertionError dalam program yang menemukan luas lingkaran.
Nilai radius “r” dilewatkan sebagai input ke suatu fungsi pada program sebelumnya yang dibuat untuk mencari luas lingkaran. Pernyataan tegas kemudian digunakan untuk menentukan apakah nilai yang diberikan atau radius 'r' di bawah nol, dan jika nilai negatif diberikan padanya, pengecualian akan dimunculkan. Luas lingkaran akan dikembalikan berdasarkan nilai jari-jari “r” yang diberikan ke fungsi. Pertama, fungsi dijalankan dengan nilai r sebagai 3. Fungsi tersebut kemudian dieksekusi dengan nilai 2,5. AssertionError dimunculkan ketika kita menggunakan nilai negatif “r”, yaitu, “-1”.
Mari kita coba contoh lain untuk menampilkan terjadinya kesalahan Assertion.
Contoh
Dalam contoh ini, program akan menentukan apakah nilai penyebutnya bukan nol.
Pesan kesalahan kesalahan pernyataan ditampilkan di program sebelumnya. Kami telah membuat dua variabel (a dan b), dan nilai integer menentukan variabel. Variabel kedua, yaitu, b kemudian diuji untuk melihat apakah tidak sama dengan 0 menggunakan pernyataan assert. Jika tidak ditentukan, pesan kesalahan akan dicetak. Jika tidak, hasil pembagian angka pertama dengan nilai kedua ditampilkan. Pada gambar sebelumnya, output program ditampilkan.
Aplikasi AssertionError
Kegunaan lain dari kesalahan pernyataan meliputi:
- Bantuan pernyataan dalam mengevaluasi nilai parameter
- Pernyataan membantu dalam memantau jenis masukan dan apakah nilai tersebut valid
- Selain itu, pernyataan membantu dalam mengidentifikasi apakah pengembang kode lain menyalahgunakan antarmuka
- Asersi membantu dalam memantau keluaran program secara terus-menerus
Bagaimana Kami Dapat Menghindari Kesalahan Pernyataan dengan Python
- Bendera -O dalam program Python dapat digunakan untuk menonaktifkan setiap pernyataan pernyataan. Penting untuk diingat bahwa pernyataan yang muncul setelah pernyataan pernyataan tidak akan dijalankan jika kami menonaktifkan pernyataan pernyataan.
- Variabel lingkungan juga dapat mengatur tanda untuk mematikan pernyataan pernyataan. Semua proses dan aplikasi yang menggunakan atau mewarisi lingkungan terpengaruh dalam situasi ini.
- Di Python, pendekatan paling sederhana untuk mencegah kesalahan pernyataan adalah menanganinya secara manual. Jika kami memastikan bahwa aliran kontrol program dialihkan sehingga tidak mengakses pernyataan pernyataan, maka tidak ada kemungkinan kesalahan pernyataan.
Menangani AssertionError
Selain pernyataan pernyataan, kami juga dapat menangani kesalahan pernyataan menggunakan metode berikut:
Menangani Kesalahan Pernyataan Menggunakan Blok Coba-Kecuali
Pernyataan tegas menentukan apakah nilainya sama. Blok try memunculkan kesalahan AssertionError karena bilangan bulat ini tidak sama. Perintah print dijalankan setelah blok exception menangkap pengecualian. Di sini, output pernyataan cetak dari blok pengecualian ditampilkan. Kata kunci raise dapat digunakan untuk memunculkan kembali error di blok exception sehingga kita dapat menentukan sumber exception. Saat pengecualian terjadi, kata kunci “naikkan” akan memunculkan kesalahan dan mengakhiri program. Ini membantu dalam memelihara atau menyimpan catatan/track pengecualian yang ada.
Menangani AssertionError Menggunakan Traceback Modul
Ketika kode berisi beberapa pernyataan tegas, modul traceback membantu mengidentifikasi sumber kesalahan yang tepat.
Dengan menggunakan modul traceback, pernyataan cetak kita bisa ditulis dengan placeholder {}.
Selain itu, kita dapat menentukan variabel lain untuk menyimpan posisi baris, nama file, nama metode, serta teks/pesan tempat pengecualian terjadi.
Objek traceback disebut sebagai “tb”. Kami menggunakan dua placeholder: satu untuk teks dan satu untuk posisi baris dalam pernyataan cetak.
Tiga komponen dari pernyataan “naikkan” — exc_type, exc_traceback, dan exc_value — ditampilkan oleh fungsi sys.exc_info().
Menangani AssertionError Menggunakan Pernyataan cetak
Untuk menangani pengecualian secara manual, kita dapat menggunakan pernyataan “cetak” di dalam blok pengecualian.
Pernyataan cetak mencetak pesan kesalahan apa pun yang dimasukkan pengguna. Dengan metode ini, kesalahan teknis tidak akan menjadi perhatian pengguna.
Alih-alih kesalahan, pesan singkat ditampilkan.
Kesimpulan
Dalam posting ini, kami pertama kali melihat pengenalan pengecualian di Python. Kami membahas AssertionError, cara kerjanya, dan bagaimana kami dapat mengimplementasikan AssertionError dengan Python. Kami menjelaskan beberapa keuntungan AssertionError dan bagaimana kami dapat menghindarinya. Di bagian terakhir postingan ini, kita melihat bagaimana kita dapat menangani AssertionError dengan Python menggunakan Try-Except Blocks, modul traceback, dan print statement.