提供所需的价值观,我尝试使用以下两种功能:功能不蟒蛇
def func1():
print('blahblah')
func2()
def func2():
check = 0
while check < 1:
first = input('Integer or pass ')
if first == 'pass':
first = 0
func1()
break
else:
first = int(first)
second = input('Integer or pass')
if second == 'pass':
second = 0
func1()
break
else:
second = int(second)
third = input('Integer or pass')
if third == 'pass':
third = 0
func1()
break
else:
third = int(third)
check = 1
return first, second, third
的FUNC2一次“通行证”被输入时返回None,而不是投入。我究竟做错了什么?
编辑:结果应该是3个整数,不管输入了多少次“通过”。 更改缩进后,我得到以下错误:UnboundLocalError:赋值之前引用的局部变量'second'(在我以传递开始的情况下)
澄清:func2要求输入,如果输入为“pass”,则调用func1 。 打印func1再次调用func2之后。这重复直到输入3个整数。他们的勇敢将在最后归还。
Bad indentation。尝试将最后两行移出while循环。 – duffymo
如果其中一个输入是“pass”,函数应该返回什么? –
如果您输入pass,它会调用func1,然后从头再次调用func2。最后只有整数应该返回 –