缩进错误基本程序

时间:2016-10-04 20:45:26

标签: python

你好我是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

我缺少的缩进在哪里?

4 个答案:

答案 0 :(得分:2)

您应该使用空格或制表符缩进主要功能。 (推荐4个空格)

像这样:

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

main()

我看到你已经为if / else做了这个,你也应该为函数做。

我建议你参加像codecademy那样的初学python课程。

答案 1 :(得分:2)

你将对主函数进行缩进,我在这里重写你的代码:

  

逻辑行开头的前导空格(空格和制表符)用于计算行的缩进级别,而后者又用于确定语句的分组。

您可以使用Python doc。了解有关Python的更多信息,以及使用IDE(如ATOM或PyCharm)进行更好的编码。

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()

答案 2 :(得分:2)

缩进代码。

在python中,你总是必须在冒号(:)之后缩进代码,否则它不知道执行它的顺序。 只需在def main()之后缩进所有内容:

答案 3 :(得分:1)

def main()下的所有代码:在调用main()时除了行之外应该缩进