Rumah > pembangunan bahagian belakang > Tutorial Python > Ralat dan penyelesaian biasa Python, disyorkan untuk dikumpulkan!

Ralat dan penyelesaian biasa Python, disyorkan untuk dikumpulkan!

WBOY
Lepaskan: 2023-04-13 19:04:01
ke hadapan
3470 orang telah melayarinya

Ralat dan penyelesaian biasa Python, disyorkan untuk dikumpulkan!

Teks

Hello semua, saya Teknologi Kecerdasan Buatan Python

Jika ada satu perkara yang paling menakutkan saya tentang menulis kod, sudah pasti ia pepijat. Bagi orang baru yang baru sahaja bersentuhan dengan pengaturcaraan, apabila mereka menikmati rasa pencapaian menulis kod, mereka sering keliru dengan pelbagai pepijat.

Ralat dan penyelesaian biasa Python, disyorkan untuk dikumpulkan!

Hari ini, kami telah berkongsi beberapa ralat Python biasa untuk menyimpan kod anda!

1. IndentationError (IndentationError)

Dalam Python, semua kod disusun dengan ruang yang betul. Jadi, sama ada terdapat ruang tambahan atau ruang yang hilang, keseluruhan kod tidak akan berjalan dan hanya fungsi ralat akan dikembalikan.

Kod Python mengikut spesifikasi ruang putih PEP8, menggunakan 4 ruang untuk setiap tahap lekukan.

Contoh ralat

a=1
b=2
if a<b:
print a
Salin selepas log masuk

Pembetulan

a=1
b=2
if a<b:
 print a
Salin selepas log masuk

2 Penggunaan campuran Tab dan ruang (TabError)

Ralat jenis ini disebabkan. kepada penggunaan tab serentak Disebabkan pengekodan aksara tab dan ruang, kunci tab pada asasnya ialah aksara tab, bukan aksara inden. Oleh kerana lebar ruang yang diwakili oleh aksara tab dalam editor teks berbeza berbeza-beza, adalah disyorkan untuk menggunakan ruang.

3. SyntaxError (SyntaxError)

Sebab ralat sintaks termasuk tiga jenis berikut:

1. Sintaks tidak sah (sintaks tidak sah)

Tanda baca tanda Peninggalan, penggunaan campuran simbol Cina dan Inggeris, kesilapan ejaan, kata kunci yang digunakan dalam nama pembolehubah atau nama fungsi.

2. Aksara tidak sah dalam pengecam

Aksara tidak dikenali muncul dalam kod, semak sama ada terdapat aksara berlebihan atau aksara Cina.

3. Rentetan tidak lengkap dikesan (EOL semasa mengimbas rentetan litera)

Dalam banyak kes, ia disebabkan oleh tanda petikan yang tidak konsisten pada kedua-dua belah rentetan. Di samping itu, cari akaun awam Linux untuk mengetahui cara membalas "buku git" di latar belakang dan dapatkan pakej hadiah kejutan.

Contoh ralat

print( 'hello', 'world')
Salin selepas log masuk

Sebab ralat: Koma ialah koma Cina

Mesej ralat: SyntaxError: pengecam aksara tidak sah

result = (1024+(512*2)/128
Salin selepas log masuk

Ralat sebab: Tanda kurung tidak muncul secara berpasangan

Mesej ralat: SyntaxError:unexpected EOF whileparsing

if name =="A"
print("hello")
Salin selepas log masuk

Punca ralat: Terlupa pada akhir pernyataan seperti if/elif/else/while /for/def/class Tambah bertindih

mesej ralat: SyntaxError: sintaks tidak sah

4. Ralat nama boleh ubah (NameErro)

Ralat nama boleh ubah adalah yang paling biasa dan paling kerap ralat terbina dalam yang biasa ditemui Jenis sering muncul dalam penamaan pembolehubah Python Jika pembolehubah tidak ditemui, NameError akan dinaikkan. Mengenai peraturan untuk nama pembolehubah, anda perlu mengingati perkara berikut:

  • Nama pembolehubah hanya boleh mengandungi huruf, nombor dan garis bawah dan tidak boleh bermula dengan nombor
  • Nama pembolehubah tidak boleh mengandungi ruang, tetapi Underscore boleh digunakan untuk memisahkan perkataan; 🎜>
  • Gunakan huruf kecil l dan huruf besar O dengan berhati-hati, kerana mereka mudah disalah anggap sebagai nombor 1 dan 0.
  • Jika ralat nama pembolehubah berlaku, anda boleh menyemak sama ada pembolehubah diberikan nilai, sama ada terdapat ketidakkonsistenan dalam huruf besar dan kecil atau sama ada nama pembolehubah ditulis dengan tidak betul, dan membetulkannya selepas mendapati ia.
  • Contoh ralat

Punca ralat: Nama pembolehubah dieja dengan salah dan urutan tersilap dieja sebagai urut

Mesej ralat: NameError: nama 'mesage' tidak ditakrifkan

message = "Hello!"
print(mesage)
Salin selepas log masuk
5 IndexError (IndexError)

Indeks ialah kedudukan item dalam tatasusunan atau senarai, apabila kita cuba mengakses elemen daripada senarai atau mengakses tuple dari indeks yang tidak wujud dalam senarai , pengecualian ini akan berlaku.

Contohnya, jika anda mempunyai senarai 10 elemen dengan indeks antara 0 dan 9, jika anda cuba mengakses elemen dengan indeks 10 atau 11 atau lebih, IndexError akan dinaikkan.

Contoh ralat

Punca ralat: Indeks ke-4 tidak wujud dalam senarai a dan indeks senarai bermula dari 0

Mesej ralat: IndexError : indeks rentetan di luar julat

a = [1,2,3]
print(a[3])
Salin selepas log masuk
6. KeyError (KeyError)

Apabila membaca kunci dan nilai dalam kamus, jika kunci tidak wujud, ralat KeyError akan dicetuskan.

Contoh ralat

Sebab ralat: Kunci 'f' tidak wujud

Mesej ralat: KeyError: 'f'

d = {'a':1,'b':2}
print(d['f'])
Salin selepas log masuk
7 ralat (TypeError)

Ralat ini timbul apabila jenis objek yang salah atau tidak disokong digunakan dalam atur cara. Ralat ini juga ditimbulkan jika percubaan dibuat untuk memanggil objek yang tidak boleh dipanggil atau untuk lelaran melalui pengecam yang tidak boleh diulang.

Contoh ralat

Punca ralat: Apabila menggunakan "+" untuk penyambungan, anda mesti menggunakan rentetan atau menukar nombor itu kepada rentetan menggunakan fungsi str()

Mesej ralat: TypeError: hanya boleh menggabungkan str(bukan "int") kepada str

age=18
print("我的年龄是"+age)
Salin selepas log masuk
8. Ralat Atribut (AttributeError)

Ralat atribut akan dinaikkan apabila rujukan dan tugasan atribut. gagal.

Sebab ralat jenis ini cuba mengakses sifat objek yang tidak diketahui Dalam erti kata lain, sifat objek yang sepadan tidak dapat ditemui. Anda boleh menyemak sama ada pembina __init__() dalam kelas ditulis dengan betul, dengan dua garis bawah di sebelah kiri dan kanan.

Atas ialah kandungan terperinci Ralat dan penyelesaian biasa Python, disyorkan untuk dikumpulkan!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:51cto.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan