我正在尝试创建一个函数,根据createSquareTile(numTiles,prefix)中的tile数量创建一个空的彩色图片
def createSquareTile(numTiles, prefix):
current = 1
if current == 1:
numTiles = requestNumber("Please input a positive number")
numTilesI = int(numTiles)
while (numTilesI < 0):
showError("Your input number" + str(numTiles)+ "is not valid. Do it again!")
numTiles = requestNumber("Please input a positive number")
if (numTilesI > 0):
current = current + 1
color = pickAColor()
return makeEmptyPicture(numTilesI), numTilesI), color)
elif current > 1:
previousChoice = requestString("Same size as pervious tile? (Y/N)")
while (previous != "N") and (previous != "Y"):
showError("Your input character" + previousChoice + "is not valid. Do it again!")
previousChoice = requestString("Same size as previous tile? (Y/N)")
if (previousChoice == "Y"):
color = pickAColor()
return makeEmptyPicture(numTilesI, numTilesI, color)
current = current + 1
elif (previousChoice == "N"):
numTilesN = requestNumber("Please input a positive number")
numTIlesNI = int(numTilesN)
colorN = pickAColor()
return makeEmptyPicture(numTilesNI, numTilesNI, colorN)
current = current + 1
根据python,
存在间距错误elif current > 1:
有人可以帮我解释我的elif声明有什么问题吗?提前谢谢!
答案 0 :(得分:1)
可能的原因:
tab
与space
混合。为什么不首先尝试去除上面的白线?如果所有可能性都无法奏效,请发表评论。
答案 1 :(得分:0)
这是你的问题: 返回makeEmptyPicture(numTilesI),numTilesI),color)
您应该从)
中移除numTilesI), color)
并且应该有效,因为实际上您的程序在此行停止而不是向前移动。执行调试并检出:
连接到pydev调试器(build 162.1967.10) 处理以退出代码0结束
正确的是: makeEmptyPicture(numTilesI),numTilesI,color