Python函数返回一个元组,其中包含l中所有正数的min、max、sum和average

2024-03-29 05:38:44 发布

您现在位置:Python中文网/ 问答频道 /正文

第一篇文章是python初学者。我想回答以下问题。我拼凑了一些东西,但得到了不断的错误,试图找出所有正数部分。第二部分是识别任何非浮点数

编写一个函数get_all_stats,该函数将浮点数字列表l作为参数,并返回l中所有数字的最小值、最大值、总和和平均值的元组

此外,如果l有任何非浮点数,它将返回“Invalid value!”

get_all_stats([1.0, 2.0, 3.0, 3, -1.0])

def get_all_stats(l):
    l_tmp = [num for num in l]
    return(min(l_tmp),max(l_tmp),sum(l_tmp),sum(l_tmp)/len(l_tmp))

Tags: 函数列表getstats错误文章数字all
2条回答

获取所有统计数据([1.0,2.0,3.0,3,-1.0])

根据关于负片的列表,应该忽略它,并给我这个输出:(1.0,3.0,6.0,2.0)

如果值是([1.0,2.0,3,-1.0]),我应该得到输出:“无效值!”

这两个额外的步骤在我已经提供的基础上,是我遇到的问题

试试这个

from itertools import repeat

def get_all_stats(data):
    lst = [item for item in data if item >=0]
    if not all(map(isinstance, lst, repeat(float))):
        return None
    return (min(lst), max(lst), sum(lst), sum(lst)/len(lst))

data = [1.0, 2.0, 3.0, 3.0, -1]
result = get_all_stats(data)
if result:
    print(result)
else:
    print("Invalid value!")
(1.0, 3.0, 9.0, 2.25)

相关问题 更多 >