Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Apakah Jenis dan Cara Menyelesaikan Ralat Inden Tidak Dijangka dalam Python?

Apakah Jenis dan Cara Menyelesaikan Ralat Inden Tidak Dijangka dalam Python?

Susan Sarandon
Susan Sarandonasal
2024-10-17 19:17:02735semak imbas

What are the Types and How to Resolve Unexpected Indent Errors in Python?

Inden Tidak Dijangka: Dilema Biasa Python

Dalam Python, susunan blok kod adalah penting dan ralat "inden tidak dijangka" boleh timbul apabila lekukan baris kod bercanggah dengan struktur yang dijangkakan. Mari kita terokai jenis ralat inden tidak dijangka dan cara menyelesaikannya.

Inden Tidak Dijangka

Ralat ini berlaku apabila garisan mempunyai lebih banyak lekukan daripada baris sebelumnya tetapi tidak tergolong dalam subblok yang sah. Blok kod, seperti yang mengikuti jika, sementara, atau untuk pernyataan, mesti mempunyai lekukan yang konsisten di seluruhnya.

Contohnya:

<code class="python">def a():
  print "foo"
    print "bar"  # Error: unexpected indent</code>

Dalam kes ini, baris kedua diindenkan lebih daripada yang pertama, melanggar peraturan lekukan yang konsisten.

Unident Tidak Padan

Ralat ini berlaku apabila garisan mempunyai ruang lekukan yang lebih sedikit daripada baris sebelumnya, tetapi ia tidak sejajar dengan mana-mana tahap lekukan luar. Python tidak dapat menentukan tahap lekukan yang betul untuk baris itu.

Contohnya:

<code class="python">if user == "Joey":
  print "Super secret powers enabled!"
print "Revealing super secrets"  # Error: unindent does not match</code>

Barisan terakhir harus mempunyai lekukan yang sama seperti baris yang mendahuluinya, atau kurang lekukan jika blok kod dimulakan oleh jika pengguna == "Joey" telah tamat.

Dijangkakan Blok Inden

Ralat ini berlaku apabila garisan tidak diindenkan dengan betul agar sepadan dengan garisan sebelumnya baris, yang dijangka akan memulakan blok, seperti jika, sementara, atau untuk pernyataan, atau definisi fungsi.

Contohnya:

<code class="python">def foo():
  print "Bar"  # Error: expected an indented block</code>

Untuk mengelakkan ralat ini, gunakan lulus jika anda memerlukan fungsi tanpa operasi:

<code class="python">def foo():
  pass</code>

Petua Mengelakkan Ralat Inden

Untuk menghapuskan ralat "inden tidak dijangka", ikut garis panduan ini:

  • Gunakan lekukan yang konsisten (cth., 4 ruang atau 2 tab) sepanjang kod anda.
  • Elakkan mencampurkan tab dan ruang.
  • Gunakan IDE yang baik yang mengendalikan lekukan secara automatik.
  • Teliti kod anda dengan teliti untuk sebarang percanggahan lekukan.

Dengan mematuhi garis panduan ini, anda boleh mengelakkan ralat lekukan dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod Python anda.

Atas ialah kandungan terperinci Apakah Jenis dan Cara Menyelesaikan Ralat Inden Tidak Dijangka dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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