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

如果改成list中,每个素数的平方和应该怎么写

如果改成list中,每个素数的平方和应该怎么写

正在回答

3 回答

def square_sum(L):

    s=0

    for x in L:

        if x/2==0:#没有意义的判断,只能排除x==0或1的结果,即便是求奇数的平方和,应该是 if x%2 == 0

            continue

        s=s+x**2

    return s


#求list列表里每个素数的平方的和

#-*- coding: UTF-8 -*-

def square_sum(list):

    sum = 0

    is_zhishu=0

    for x in list:

        if x > 2:

            for i in range(2, int(x ** 0.5) + 2):

                if x % i == 0:

                    break                

                else:

                    is_zhishu = 1# 如果不能被整除,则标记为1

            if is_zhishu == 1:

                sum += x * x

                is_zhishu = 0

        elif x == 2:

            sum += x * x

        else:

            continue

    return sum


0 回复 有任何疑惑可以回复我~
#1

人间世支离疏

更正一下: for i in range(2, int(x ** 0.5) + 2): if x % i == 0: is_zhishu = 0#需要重新把值归为0,避免之前循环的i没有被整除而导致is_zhishu已经是1 break
2019-04-18 回复 有任何疑惑可以回复我~

我运行了,但是结果还是不对。依然是对每个数进行平方求和

0 回复 有任何疑惑可以回复我~
def square_sum(L):
    s=0
    for x in L:
        if x/2==0:
            continue
        s=s+x**2
    return s


0 回复 有任何疑惑可以回复我~
#1

骚和尚

是取余 def square_sum(L): s=0 for x in L: if x%2==0: continue s=s+x**2 return s
2019-04-18 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

如果改成list中,每个素数的平方和应该怎么写

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信