if __name__ == "__main__": ##模块将从此处开始运行 print("该脚本正在直接运行。") greet() else: print("该脚本作为模块被导入。")
问题3:编写def函数
编写一个名为sum_and_average的函数
要求:函数接收一个包含数字的列表作为参数函数返回两个值:列表中所有数字的总和,以及这些数字的平均值
如果传入的列表为空,总和返回 0,平均值返回 0.0
编写代码测试这个函数,至少测试两种情况:包含数字的列表和空列表
例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
defsum_and_average(list): ##定义sum_and_average(list) total = sum(list) ##求和 count = len(list) ##统计传入列表中的值的数量 average = total / count if count > 0else0##判断,因为求平均要求分母不为零,有传入为空的要求,故进行判断,当传入为空时使average为0,传入不为空时用总和除以值的数量求平均 print("求和:%d" %total) ##打印求和量,类型是整数 print("平均:%.1f" %average) ##打印求平均量,类型是浮点型,保留小数点后一位 returnNone##返回None,此行代码可不写
if __name__ == "__main__": ##main before_list = input("输入一些数字,使用英文逗号间隔:") ##对传入数据在before_list变量中进行预存储,方便后续校验非空 ifnot before_list: ##如果传入内容为空 list = before_list ##则让list列表为空 else: ##如果传入内容不为空 list = [int(x) for x in before_list.split(',')] ##将输入before_list中值传入list中,英文逗号为分隔符 sum_and_average(list) ##运行自定义函数