[英]Indention Errors on Python IDLE
我只是遵循python的基本知識,並且一直在使用IDLE,因為我發現可以方便地進行實時腳本實驗。
雖然我可以毫無問題地運行此腳本作為文件,但是我不能在IDLE!中包含最后一個打印語句。 我嘗試了一個縮進,四個空格,沒有縮進。 請解釋我做錯了。
while True:
print ('Who are you?')
name = input()
if name != 'Joe':
continue
print('Hello, Joe. What is the password? (It is a fish.)')
password = input()
if password == 'swordfish':
break
print('value')
SyntaxError: invalid syntax
您可以一次輸入一個語句。 while
循環將循環本身視為一個循環,並且由於循環是一個代碼塊,因此一切正常。
但是,最后的print
是一個新命令。 您必須先運行while
循環,然后在解釋器中鍵入print
。
您一次不能將多個語句粘貼到IDLE中。 問題與縮進無關。 while
循環構成一個復合語句,而最終print
while
構成另一個復合語句。
當您嘗試一次粘貼到IDLE中時,以下內容也會出現問題:
print('A')
print('B')
有問題的事實更清楚地表明,問題不是縮進之一。
您在第10行中遇到了undenting錯誤,那么您只需添加一個espace
while True:
print ('Who are you?')
name = input()
if name != 'Joe':
continue
print('Hello, Joe. What is the password? (It is a fish.)')
password = input()
if password == 'swordfish':
break
print('value')
正如其他人所指出的那樣,python IDLE只允許一次執行一個代碼塊。 在這種情況下,while循環是一個“塊”。 最后一個打印語句在此塊之外,因此無法執行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.