Python 代码求两数间素数和时,为什么输出一堆等于号?

ID:20887 / 打印

python 代码求两数间素数和时,为什么输出一堆等于号?

为什么求两数间素数和时会输出一堆等于号?

python 中的代码如下:

PHP
def num(n):  for i in range(2,n):     if n %i == 0:         return 0     break  else:     return n  a = int(input()) b = int(input()) s = 0 for n in range(a,b+1):     s += num(n)     if n == 1:         print("he%d"%(s-1))     else:         print("he%d"%s)

运行这段代码后,却输出了一堆等于号,原因在于:

  • 函数 num 每次调用只能返回一个值,它返回素数或 0。

修改后的代码:

立即学习“Python免费学习笔记(深入)”;

PHP
def num(n):     return [n if n%i!=0 else (n-n) for i in range(2,n)]#条件if else生成列表推导式  a = int(input()) b = int(input()) s = 0 for n in range(a,b+1):     for t in num(n):#此处原来返回none,none与int不能运算         s += t#拆开返回的列表推导式进行运算     if n == 1:         print("he%d"%(s-1))#不同数据类型不能运算,先运算再合并字符串     else:         print("he%d"%s)
上一篇: 如何从两个数据结构中提取特定信息并将其组合成新的数据结构?
下一篇: 使用 subprocess.open 执行 Shell 脚本时,为什么 Git 命令无法识别?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。