2016-10-04 42 views
-9

你好,我是新手到Python,我試圖去學習,這是我繼續打,當我執行下面的代碼,哪裏是錯誤縮進錯誤的基本程序

#!/usr/bin/python 

def main(): 
num1=input("Enter the 1st #\t\t") 
print "First # is\t:", num1 
print 
num2=input("Enter the 2nd #\t\t") 
print "Second # is\t:",num2 
print 
num3=input("Enter the 3rd #\t\t") 
print "3rd #is:,\t",num3 
if(num1>num2) and (num1>num3): 
    print"Highest # is:\t",num1 
elif(num2>num3) and (num2 >num1): 
    print"Highest # is:\t",num2 
else: 
    print "The WINNER IS\n" 
    print num3 

main() 

錯誤:

python 1.py 
File "1.py", line 4 
num1=input("Enter the 1st #\t\t") 
^
IndentationError: expected an indented block 

我缺少的縮進位置在哪裏?

+5

幾乎所有的它,目前。你的問題沒有縮進來將任何代碼放在'def main()'塊/作用域內。如果這是你的代碼的精確表示,你需要將你打算成爲'main'的一部分縮進4個空格 – roganjosh

+0

@raganjosh你是什麼意思,你能糾正上面的語法嗎? – ady6831983

+3

@ ady6831983當然,任何Python書籍/教程都會解釋函數定義中的任何代碼都需要縮進。 –

回答

2

您應該使用空格或製表符縮進主函數。 (4位被建議報告)

像這樣:

def main() 
    num=input() 
    # rest of your main code 

main() 

我看見你媒體鏈接這樣做是爲了if/else語句,你也應該這樣做的功能。

我推薦你參加一個像codecademy一樣的初學者python課程。

2

您將作出縮進主功能,我在這裏重寫代碼:

Leading whitespace (spaces and tabs) at the beginning of a logical line is used to compute the indentation level of the line, which in turn is used to determine the grouping of statements.

你可以使用Python文檔的。瞭解關於Python的更多信息,以及使用ATOM或PyCharm等IDE來實現更好的編碼。

def main(): 
    num1=input("Enter the 1st #\t\t") 
    print "First # is\t:", num1 
    print 
    num2=input("Enter the 2nd #\t\t") 
    print "Second # is\t:",num2 
    print 
    num3=input("Enter the 3rd #\t\t") 
    print "3rd #is:,\t",num3 
    if(num1>num2) and (num1>num3): 
     print"Highest # is:\t",num1 
    elif(num2>num3) and (num2 >num1): 
     print"Highest # is:\t",num2 
    else: 
     print "The WINNER IS\n" 
     print num3 

main() 
1

下的所有代碼的DEF的main():應縮進除了線,當你調用main()

2

縮進的代碼。

在Python中,你總是有一個冒號後縮進代碼(:)否則不知道什麼順序來執行它後高清的main() 就縮進一切: