我正在使用notepad ++来显示不同的缩进等。我在第26行收到错误代码:
return firstNum, secondNum, thirdNum
这是完整的代码。如果有人能看到这里发生了什么,那就太好了。我已经为此过多地杀了自己。如果我的第一个问题没有特定的“问题”,我很抱歉
option = 1
while option !=0:
print "\n\n\n************MENU************"
print "1. Counting"
print "2. Fibbonacci Sequence"
print "0. GET ME OUTTA HERE!"
print "*" * 28
option = input("Please make a selection: ") #counting submenu
if option == 1:
print "\n\n*******Counting Submenu*******"
print "1. Count up by one"
print "2. Count down by one"
print "3. Count up by different number"
print "4. Count down by different number"
print "*" * 28
countingSubmenu = input("Please make a selection: ")
def getNum():
firstNum = input("Please state what number to start at: ")
secondNum = input("Please state swhat number to end at: ")
if countingSubmenu == 3 or countingSubmenu == 4:
thirdNum = input("Please state what increment you would want to go up by: ")
return firstNum, secondNum, thirdNum
else:
return firstNum, secondNum
if option == 1:
getNum(firstNum, secondNum, thirdNum)
for x in range(firstNum, secondNum+1, 1):
print x
print "End of test." #def getNum():
答案 0 :(得分:2)
以下三行使用制表符而不是空格:
return firstNum, secondNum, thirdNum
else:
return firstNum, secondNum
您可以通过尝试编辑问题轻松地看到这一点,您会看到标签显示为8个空格,并且缩进将明显关闭。
删除这些行之前的所有空格,并仅使用空格再次缩进它们,并且不应该出现缩进错误。
您的代码可能仍然不正确,因为函数getNum
不接受任何参数,但您用三个参数调用它。
编辑:我认为您尝试做的是在调用getNum
函数时获取返回值,为此,您应该像这样调用它:
firstNum, secondNum, thirdNum = getNum()
...或
result = getNum()
firstNum, secondNum, thirdNum = result
如果始终getNum
返回相同数量的值,则可能会更容易。因此,请将行return firstNum, secondNum
替换为return firstNum, secondNum, None
。
答案 1 :(得分:0)
在该行之前有三个\t
并且您在其他地方使用了四个空格(它也位于其他地方,另一个返回后面)。 Notepad ++中有一个设置,让您始终使用空格作为选项卡。因为我将它用于Python(尽管只是偶尔使用它),所以我的机器总是打开它。