[英]Indentation issue python
我是python的新手,當我注釋('#')以下代碼的最后兩行時,出現縮進錯誤消息:
try:
return get_callable(callback), {}
# except (ImportError, AttributeError), e:
# raise ViewDoesNotExist("Tried %s. Error was: %s" % (callback, st r(e)))
有人可以幫忙嗎?
當注釋掉try
/ except
,在try
前面放置一個if True: #
:
if True: #try:
return get_callable(callback), {}
# except (ImportError, AttributeError), e:
# raise ViewDoesNotExist("Tried %s. Error was: %s" % (callback, st r(e)))
這使得語法正確,而不必取消內部塊的縮進。 您還可以在注釋后添加finally: pass
塊, except
:
try:
return get_callable(callback), {}
# except (ImportError, AttributeError), e:
# raise ViewDoesNotExist("Tried %s. Error was: %s" % (callback, st r(e)))
finally:
pass
您唯一的其他選擇是也注釋掉try:
行, 並刪除塊的縮進:
# try:
return get_callable(callback), {}
# except (ImportError, AttributeError), e:
# raise ViewDoesNotExist("Tried %s. Error was: %s" % (callback, st r(e)))
您不能輕描淡寫try:
在沒有except
情況下完成,否則finally
將無法完成。
您的代碼在語法上不再有效。 except子句是try子句的必需伴侶。
如果沒有其他except
語句,則python在尋找except語句,而很可能看到未縮進的行。
因此,您可能會想,“為什么這是縮進錯誤?我只是缺少一個except
,它與縮進沒有任何關系。” 原因是python在try:
之后“看到”了一條未縮進的行try:
並希望將其縮進try
內部。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.