素数功能不打印输出

时间:2013-09-16 19:06:18

标签: python

我创建了一个函数来检查数字是否为素数,但是当我调用它时,我没有得到任何屏幕输出:

def is_prime(x):
    x = int(x)
    if x < 0 or x == 1:
        return False
        print('no')
    else:
        temp_div = 10
        while temp_div > 1:
            if x % temp_div == 0:
                return False
                print('no')
                break
            else:
                temp_div -= 1
        if temp_div == 1:
            return True
            print('yes')
        else:
            return False
            print('no')

3 个答案:

答案 0 :(得分:2)

当您调用“return”时,该功能立即结束。在“返回”语句之前立即移动所有打印语句。

或者,重新排列代码,以便主要检查功能不包含打印语句。相反,使用另一段代码来使用它,并根据输出打印出“是”或“否”。这有助于您使计算代码和显示代码保持清洁并彼此分离。

答案 1 :(得分:0)

    return False
    print('no')

交换returnprint行与此类似:

    print('no')
    return False

答案 2 :(得分:0)

我还认为你回来后不需要“休息”声明。 “return”将停止执行函数,而不执行“break”语句。