SORU
19 HAZİRAN 2009, Cuma


Ne "Beklenmedik bir girinti" python?

Nasıl "beklenmedik girinti" python? hatayı düzeltmek muyum

CEVAP
19 HAZİRAN 2009, Cuma


Python kullanır satır başındaki kod bloklarının başlangıç ve bitiş zamanını belirlemek için boşluk. Alabilirsiniz hatalar şunlardır:

Beklenmedik bir girinti.Bu kod satırı, bir öncekinden başında fazla boşluk vardır, ama önce bir subblock (deyim/süre/örneğin) başlangıcı değildir. Bir blok içinde kod tüm satırları boşluk tamamen aynı dize ile başlamak gerekir. Örneğin:

>>> def a():
...   print "foo"
...     print "bar"
IndentationError: unexpected indent

Python etkileşimli olarak çalışırken özellikle ortak bir şudur: komutlarınızı önce fazladan boşluk koymayın emin olun. (Çok rahatsız edici zaman kopyalama ve yapıştırma örnek kod!)

>>>   print "hello"
IndentationError: unexpected indent

Unindent herhangi bir dış girinti düzeyi eşleşmiyor.Bu kod satırı, bir öncekinden başında az boşluk vardır, ama eşit bir parçası olabilir diğer blok eşleşmiyor. Python olamaz nereye karar verin. Örneğin, aşağıda, son baskı ise fıkra bir parçası olması gerekiyordu, değil mi?

>>> if user == "Joey":
...     print "Super secret powers enabled!"
...   print "Revealing super secrets"
IndendationError: unindent does not match any outer indentation level

Girintili bir blok bekleniyor.Bu kod satırı aynı sayıda boşluk başlangıç olarak daha önce, ama son satırı da beklenen başlangıç bloğu (örneğin,//bildirimi, işlev tanımı).

>>> def foo():
... print "Bar"
IndentationError: expected an indented block

Eğer hiçbir şey yapmaz bir işlevi istiyorsan, kullan "no-op" komutugeçmek:

>>> def foo():
...     pass

Sekmeleri ve boşlukları karıştırma izin verilir (en azından Python benim sürümü, Python editörü uymayabilir olan sekmeleri 8 karakter uzunluğunda olduğunu varsayar. Sadece "" sekmeleri. hayır demek En editörler otomatik olarak boşluk tarafından değiştirilmesine olanak tanır.

Bu sorunları önlemek için en iyi yolu her zaman bir subblock girinti ve ideal senin için sorun çözen iyi bir IDE kullanın boşluk tutarlı bir dizi kullanmaktır. Bu da kodunuzu daha okunaklı hale getirecek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Kanaal van Dj0fifty

    Kanaal van D

    28 EKİM 2011
  • My name is Festis and I'm free

    My name is F

    2 EKİM 2011
  • J Medema

    J Medema

    11 EKİM 2006