函数无法在python

时间:2016-11-29 12:16:28

标签: function python-3.x

我正在尝试使用以下两种功能:

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

当一次&#34;传递&#34; func2返回None而不是输入。进入了。我做错了什么?

编辑:结果应为3个整数,无论​​多少次&#39;传递&#39;进入了。 更改缩进后,我得到以下错误:UnboundLocalError:local variable&#39; second&#39;在赋值之前引用(如果我以pass开头)

澄清:func2要求输入,如果输入是&#34;传递&#34;然后调用func1。 打印后func1再次调用func2。重复此操作直到输入3个整数。他们的价值应该在最后归还。

1 个答案:

答案 0 :(得分:1)

你的缩进是错误的。您需要在之前移动最后一个语句return first, second, third一个标签。