为了账号安全,请及时绑定邮箱和手机立即绑定

如何停止python打印多于一行?

如何停止python打印多于一行?

慕运维8079593 2021-12-21 17:34:26
我有一个小函数来检查一个数字是否为素数。除了一个小细节之外,它工作正常 - 它print在程序结束时打印出不止一行。n = int(input("Enter a number to find if it is prime:  "))def is_prime():    for i in range(2, n):        if n % i == 0:            print("Not prime")            break        else:            print("The number {} is prime".format(n))is_prime()如果我输入数字 2 例如当程序运行时,它会打印:the number 2 is primethe number 2 is primethe number 2 is prime它只需要打印该行一次,这是为什么呢?
查看完整描述

1 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

你else的位置不对。你有它if,但你实际上想要它在for.


它可能不太为人所知,但您可以有一个elseonfor循环,如果break在循环期间没有执行,它将执行。


n = int(input("Enter a number to find if it is prime:  "))


def is_prime():

    for i in range(2, n):

        if n % i == 0:

            print("Not prime")

            break

    else:

        print("The number {} is prime".format(n))


is_prime()


查看完整回答
反对 回复 2021-12-21
  • 1 回答
  • 0 关注
  • 155 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信