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

我不会啊不会啊

def func(x):
    if isinstance(x,list):
        sum=0
        for a in x:
            if isinstance(a,float) or isinstance(a,int):
                sum+=a
            else:
                sum='类型错误,list中有非floa或非int型的元素'
        return sum           
    if  isinstance(x,tuple):
        sum=0
        for a in x:
            if isinstance(a,float) or isinstance(a,int):
                sum+=a*a
            else:
                sum='类型错误,tuple中有非floa或非int型的元素'
        return sum
    else:
        sum='类型错误'
    return sum
   
       
a=[1,2,3,4,5,'a']
b=(1,2,3,4,5,'b')
c={'a':1}
print(func(a))
print(func(b))
print(func(c))
           

正在回答

2 回答

优秀!!

2 回复 有任何疑惑可以回复我~

def func(x):

    if isinstance(x,list):

        sum1=0

        for a in x:

            if isinstance(a,int) or isinstance(a,float):

                sum1+=a

        return sum1

    if isinstance(x,tuple):

        sum2=1

        for b in x:

            if isinstance(b,int) or isinstance(b,float):

                sum2=sum2*b

        return sum2

            

L=[1,2,3,4,5]

print (func(L))

S=(1,2,3,4,5)

print (func(S))

D=[1,2,3,4,'sd']

print (func(D))


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

禾希禾希

你这个没有考虑到list和tuple中数字型元素0个的情况,譬如L=['A','B','C','D','E'],T=('A','B','C','D','E'),那么你的程序就会返回0和1,这个结果是不对的
2021-02-26 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Python3 入门教程(新版)
  • 参与学习       155101    人
  • 解答问题       1084    个

python3入门教程,让你快速入门并能编写简单的Python程序

进入课程

我不会啊不会啊

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