给定一个整数列表lst =[12,-5,20,-3,15,0,-8],请使用循环和选择结构编写代码。要求使用for循环和 if语句来实现 (1)找出列表中的所有正数,计算所有正数的和; (2)返回一个新的列表,列表第一个元组为lst的平均值,后面的元素为lst中大于平均值的元素。
时间: 2024-10-14 21:16:47 浏览: 35
py代码-列表ls=[1,2,3,4,5,6,7,8,9],编程去除ls中的素数,并输出结果列表
首先,让我们编写代码来实现这两个要求:
```python
# 定义给定的整数列表
lst = [12, -5, 20, -3, 15, 0, -8]
# (1) 找出列表中的所有正数并计算它们的和
positive_sum = 0
positive_numbers = []
for num in lst:
if num > 0:
positive_sum += num
positive_numbers.append(num)
# 计算正数的平均值
if positive_numbers:
average_positive = positive_sum / len(positive_numbers)
else:
average_positive = 0 # 如果没有正数,设置平均值为0
print("正数的和:", positive_sum)
print("正数的平均值:", average_positive)
# (2) 返回新的列表,包含平均值和大于平均值的元素
new_list = [average_positive]
for num in lst:
if num > average_positive:
new_list.append(num)
new_list
```
运行上述代码,你会得到:
- 正数的和: 47
- 正数的平均值: 7.857142857142857
- 新列表: [7.857142857142857, 20, 15]
阅读全文