python中意外缩进是什么意思_如何处理python中的“意外缩进”?
慕工程0101907
Python在行的開頭使用間距來確定代碼塊何時(shí)開始和結(jié)束。你可以得到的錯(cuò)誤是:意外的縮進(jìn)。這行代碼在開始時(shí)比前一行有更多空格,但前一行不是子塊的開頭(例如if / while / for語句)。塊中的所有代碼行必須以完全相同的空格字符串開頭。例如:>>>?def?a():...???print?"foo"...?????print?"bar"IndentationError:?unexpected?indent這個(gè)在交互式運(yùn)行python時(shí)尤為常見:確保在命令之前不要添加任何額外的空格。(復(fù)制和粘貼示例代碼時(shí)非常煩人!)>>>???print?"hello"IndentationError:?unexpected?indentUnindent與任何外部縮進(jìn)級別都不匹配。這行代碼在開始時(shí)的空間比之前的空間少,但同樣地,它與它可能屬于的任何其他塊不匹配。Python無法決定它的去向。例如,在下面,最終的打印是否應(yīng)該是if子句的一部分?>>>?if?user?==?"Joey":...?????print?"Super?secret?powers?enabled!"...???print?"Revealing?super?secrets"IndendationError:?unindent?does?not?match?any?outer?indentation?level期望一個(gè)縮進(jìn)的塊。這行代碼在開始時(shí)具有與前一行相同的空格數(shù),但最后一行預(yù)計(jì)會啟動(dòng)一個(gè)塊(例如if / while / for語句,函數(shù)定義)。>>>?def?foo():...?print?"Bar"IndentationError:?expected?an?indented?block如果您想要一個(gè)不執(zhí)行任何操作的函數(shù),請使用“no-op”命令傳遞:>>>?def?foo():...?????pass允許混合制表符和空格(至少在我的Python版本中),但Python假定制表符長8個(gè)字符,可能與您的編輯器不匹配。只是對標(biāo)簽說“不”。大多數(shù)編輯器允許它們被空格自動(dòng)替換。避免這些問題的最佳方法是在縮進(jìn)子塊時(shí)始終使用一致數(shù)量的空格,理想情況下使用可以解決問題的好IDE。這也將使您的代碼更具可讀性。
總結(jié)
以上是生活随笔為你收集整理的python中意外缩进是什么意思_如何处理python中的“意外缩进”?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql联合索引顺序调整_MySQL
- 下一篇: pythonista3安装stash_P