Rumah pembangunan bahagian belakang Tutorial Python Apakah pengendalian pengecualian dalam Python?

Apakah pengendalian pengecualian dalam Python?

Jun 03, 2023 pm 06:40 PM
kesilapan tidak normal pengendalian pengecualian python

Pengendalian pengecualian dalam Python bermakna apabila menjalankan atur cara, jika ralat berlaku (seperti membahagi dengan sifar, fail tidak wujud, dsb.) menyebabkan atur cara ditamatkan atau pengecualian berlaku, atur cara secara automatik akan melompat ke blok kod pengendalian pengecualian dan lakukan pemprosesan yang sepadan supaya atur cara tidak ditamatkan secara langsung.

Pengendalian pengecualian adalah sangat penting Ia boleh membantu pengaturcara mengeluarkan maklumat ralat, dan ia boleh membantu kami mencari lokasi ralat, mengurangkan kadar ralat program dan meningkatkan kestabilan dan kebolehselenggaraan atur cara.

Pengendalian pengecualian dalam Python terutamanya termasuk kata kunci berikut: cuba, kecuali, akhirnya dan naikkan. Penggunaan dan fungsinya diperkenalkan di bawah:

1 kecuali cuba

Pernyataan cuba-kecuali boleh menangkap pengecualian dan memprosesnya untuk mengelakkan program daripada terganggu akibat pengecualian. Sintaks adalah seperti berikut:

try:
    #代码块
except [异常类型]:
    #异常处理代码块
Salin selepas log masuk

Blok kod di bawah pernyataan cuba ialah blok kod yang akan dilaksanakan Jika pengecualian berlaku, ia akan melompat ke blok kecuali untuk pengendalian pengecualian. Jika tiada pengecualian berlaku, kod dalam blok kecuali dilangkau.

Apabila kecuali diikuti oleh jenis pengecualian tertentu, kod dalam blok kecuali akan dilaksanakan hanya apabila pengecualian jenis itu ditangkap apabila kecuali tidak diikuti oleh mana-mana jenis pengecualian, ia akan ditangkap Semua tidak normal.

Contoh diberikan di bawah:

try:
    a = 5 / 0  # 这里会抛出一个ZeroDivisionError异常
except ZeroDivisionError:
    print("除数不能为零")
Salin selepas log masuk

Penjelasan: Program di atas akan membuang pengecualian ZeroDivisionError apabila melaksanakan 5/0, tetapi disebabkan penggunaan pernyataan try-except, program akan bukan Ia ranap, tetapi mengeluarkan ayat "Pembahagi tidak boleh sifar".

2.akhirnya

akhirnya ialah blok kod pilihan Tidak kira sama ada terdapat pengecualian dalam blok cuba, kod dalam blok akhirnya akan dilaksanakan. Contohnya:

try:
    # 代码块
except:
    # 异常处理代码块
finally:
    # finally块
Salin selepas log masuk

Dalam program di atas, jika pengecualian berlaku dalam blok cuba, blok kecuali akan dilaksanakan untuk pengendalian pengecualian, jika tiada pengecualian berlaku, kod dalam blok akhirnya juga akan dilaksanakan. Jika penyataan seperti return, break, atau continue muncul dalam blok akhirnya, nilai dalam akhirnya akan dikembalikan.

Contoh diberikan di bawah:

try:
    f = open('filename.txt', 'r')
    lines = f.readlines()
    result = ""
    for line in lines:
        result += line
except IOError:
    print("文件读取出错")
finally:
    print("关闭文件")
    f.close()
Salin selepas log masuk

Penjelasan: Program di atas menggunakan try-except untuk membaca fail Jika ralat membaca berlaku, kod dalam blok except akan dilaksanakan tanpa mengira sama ada Jika pengecualian berlaku, kod dalam blok akhirnya akan dilaksanakan untuk memastikan fail ditutup dengan betul.

3.raise

Pernyataan kenaikan digunakan untuk membuang pengecualian secara manual. Contohnya:

x = 10
if x > 5:
    raise Exception('x不能大于5。x的值为:{}'.format(x))
Salin selepas log masuk

Dalam atur cara di atas, apabila nilai x lebih besar daripada 5, atur cara akan membuang pengecualian jenis Pengecualian secara manual Selepas pengecualian dilemparkan, atur cara akan melompat ke blok kecuali untuk pengendalian pengecualian.

4.try-except-else

Kod dalam blok else dalam pernyataan try-except-else hanya akan dilaksanakan apabila tiada pengecualian dilemparkan dalam blok try. Contohnya:

try:
    x = int(input("请输入一个整数:"))
except ValueError:
    print("无效的输入!")
else:
    print("输入的数字是:", x)
Salin selepas log masuk

Dalam atur cara di atas, apabila input pengguna bukan integer, pengecualian ValueError akan dilemparkan dan atur cara akan melaksanakan kod dalam blok except Apabila input ialah integer, atur cara akan melaksanakan Kod lain dalam blok yang mengeluarkan nombor yang dimasukkan oleh pengguna.

Ringkasan

Pengendalian pengecualian sangat penting untuk pengaturcara. Ia boleh membantu kami mencari ralat dalam program, mengurangkan kadar ranap program dan meningkatkan kestabilan dan kebolehselenggaraan program. Dalam Python, pernyataan cuba-kecuali boleh membantu kami menangkap pengecualian dan mengendalikannya Blok akhirnya boleh memastikan bahawa kod dalam blok akhirnya akan dilaksanakan dalam apa jua keadaan Pernyataan raise boleh membuang pengecualian secara manual. Sila gunakan kata kunci ini secara munasabah untuk memastikan program anda lebih stabil dan boleh dipercayai.

Atas ialah kandungan terperinci Apakah pengendalian pengecualian dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tidak dapat menyelesaikan operasi (Ralat 0x0000771) Ralat pencetak Tidak dapat menyelesaikan operasi (Ralat 0x0000771) Ralat pencetak Mar 16, 2024 pm 03:50 PM

Jika anda menemui mesej ralat semasa menggunakan pencetak anda, seperti operasi tidak dapat diselesaikan (ralat 0x00000771), ini mungkin kerana pencetak telah diputuskan sambungan. Dalam kes ini, anda boleh menyelesaikan masalah melalui kaedah berikut. Dalam artikel ini, kami akan membincangkan cara membetulkan isu ini pada Windows 11/10 PC. Keseluruhan mesej ralat berkata: Operasi tidak dapat diselesaikan (ralat 0x0000771). Pencetak yang ditentukan telah dipadamkan. Betulkan 0x00000771 Ralat Pencetak pada Windows PC Untuk membetulkan Ralat Pencetak operasi tidak dapat diselesaikan (Ralat 0x0000771), pencetak yang ditentukan telah dipadamkan pada Windows 11/10 PC, ikut penyelesaian ini: Mulakan semula Print Spool

Mendedahkan punca kod status HTTP 460 Mendedahkan punca kod status HTTP 460 Feb 19, 2024 pm 08:30 PM

Menyahsulit kod status HTTP 460: Mengapakah ralat ini berlaku? Pengenalan: Dalam penggunaan rangkaian harian, kami sering menghadapi pelbagai gesaan ralat, termasuk kod status HTTP. Kod status ini ialah mekanisme yang ditakrifkan oleh protokol HTTP untuk menunjukkan pemprosesan permintaan. Di antara kod status ini, terdapat kod ralat yang agak jarang berlaku, iaitu 460. Artikel ini akan menyelidiki kod ralat ini dan menerangkan sebab ralat ini berlaku. Definisi kod status HTTP 460: Pertama, kita perlu memahami asas kod status HTTP

Penyelesaian kepada ralat segera Windows Update Ralat 0x8024401c Penyelesaian kepada ralat segera Windows Update Ralat 0x8024401c Jun 08, 2024 pm 12:18 PM

Jadual Kandungan Penyelesaian 1 Penyelesaian 21. Padamkan fail sementara Windows Update 2. Membaiki fail sistem yang rosak 3. Lihat dan ubah suai entri pendaftaran 4. Matikan kad rangkaian IPv6 5. Jalankan alat WindowsUpdateTroubleshooter untuk membaiki 6. Matikan firewall dan perisian anti-virus lain yang berkaitan. 7. Tutup perkhidmatan WidowsUpdate. Penyelesaian 3 Penyelesaian 4 Ralat "0x8024401c" berlaku semasa kemas kini Windows pada komputer Huawei Gejala Masalah Punca Penyelesaian Masih tidak diselesaikan? Baru-baru ini, pelayan web perlu dikemas kini kerana kelemahan sistem Selepas log masuk ke pelayan, kemas kini menggesa kod ralat 0x8024401c

Mentafsir ralat Oracle 3114: punca dan penyelesaian Mentafsir ralat Oracle 3114: punca dan penyelesaian Mar 08, 2024 pm 03:42 PM

Tajuk: Analisis Ralat Oracle 3114: Punca dan Penyelesaian Apabila menggunakan pangkalan data Oracle, anda sering menghadapi pelbagai kod ralat, antaranya ralat 3114 adalah yang biasa. Ralat ini biasanya melibatkan masalah pautan pangkalan data, yang mungkin menyebabkan pengecualian apabila mengakses pangkalan data. Artikel ini akan mentafsir ralat Oracle 3114, membincangkan puncanya dan memberikan kaedah khusus untuk menyelesaikan ralat dan contoh kod yang berkaitan. 1. Definisi ralat 3114 ralat Oracle 3114 lulus

Mengapa apl Xiangxiangfuzhai memaparkan ralat? Mengapa apl Xiangxiangfuzhai memaparkan ralat? Mar 19, 2024 am 08:04 AM

Ralat paparan ialah masalah yang mungkin berlaku dalam apl Xiangxiang Fuzhai Sesetengah pengguna tidak pasti mengapa apl Xiangxiang Fuzhai memaparkan ralat Ia mungkin disebabkan oleh masalah sambungan rangkaian, terlalu banyak program latar belakang, maklumat pendaftaran yang salah, dll. Seterusnya, Ini pengenalan editor tentang cara menyelesaikan ralat paparan aplikasi untuk pengguna yang berminat harus datang dan lihat! Mengapa apl Xiangxiang Fuzhai memaparkan jawapan ralat: masalah sambungan rangkaian, terlalu banyak program latar belakang, maklumat pendaftaran yang salah, dll. Butiran: 1. [Masalah rangkaian] Penyelesaian: Semak status rangkaian sambungan peranti, sambung semula atau pilih sambungan rangkaian lain ke guna. 2. [Terlalu banyak program latar belakang] Penyelesaian: Tutup program lain yang sedang berjalan dan lepaskan sistem, yang boleh mempercepatkan berjalannya perisian. 3. [Maklumat pendaftaran salah

Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Bagaimana untuk menyelesaikan ralat 403 yang dihadapi oleh permintaan jQuery AJAX Feb 20, 2024 am 10:07 AM

Tajuk: Kaedah dan contoh kod untuk menyelesaikan ralat 403 dalam permintaan AJAX jQuery Ralat 403 merujuk kepada permintaan bahawa pelayan melarang akses kepada sumber Ralat ini biasanya berlaku kerana permintaan itu tidak mempunyai kebenaran atau ditolak oleh pelayan. Apabila membuat permintaan jQueryAJAX, anda kadangkala menghadapi situasi ini Artikel ini akan memperkenalkan cara menyelesaikan masalah ini dan memberikan contoh kod. Penyelesaian: Semak kebenaran: Mula-mula pastikan alamat URL yang diminta adalah betul dan sahkan bahawa anda mempunyai kebenaran yang mencukupi untuk mengakses sumber tersebut.

Panduan misi luar biasa Ronin Rise Pool Panduan misi luar biasa Ronin Rise Pool Mar 26, 2024 pm 08:06 PM

Keabnormalan dalam kolam adalah tugas sampingan dalam permainan tugasan dan siasat punca bau busuk Kemudian, kami dapati Ternyata terdapat banyak mayat di bawah kolam. Panduan untuk misi luar biasa dalam Kolam Bangkit Ronin: 1. Bercakap dengan Iizuka dan pelajari teknik menembak di dalam air. 2. Pergi ke lokasi dalam gambar di bawah untuk menerima tugas yang tidak normal di kolam. 3. Pergi ke lokasi misi dan bercakap dengan NPC, dan ketahui bahawa terdapat bau busuk di kolam berdekatan. 4. Pergi ke kolam untuk menyiasat. 5. Berenang ke lokasi dalam gambar di bawah, menyelam dalam air, dan anda akan menemui banyak mayat. 6. Gunakan kamera untuk mengambil gambar mayat. 7

Linux Oops: Penjelasan terperinci tentang maksud ralat ini Linux Oops: Penjelasan terperinci tentang maksud ralat ini Mar 21, 2024 am 09:06 AM

LinuxOops: Penjelasan terperinci tentang maksud ralat ini, memerlukan contoh kod khusus Apakah LinuxOops? Dalam sistem Linux, "Oops" merujuk kepada situasi di mana ralat serius dalam kernel menyebabkan sistem ranap. Oops sebenarnya adalah mekanisme ranap kernel yang menghentikan sistem apabila ralat maut berlaku dan mencetak maklumat ralat yang berkaitan supaya pembangun boleh mendiagnosis dan membetulkan masalah. Oops biasanya berlaku dalam ruang kernel dan tiada kaitan dengan aplikasi ruang pengguna. Apabila kernel bertemu

See all articles