1. 练习一
题目要求:
编写一个函数cacluate, 可以接收任意多个数,返回的是一个元组.
元组的第一个值为所有参数的平均值, 第二个值是大于平均值的所有数.
def cacluate(*args):
avg = sum(args)/len(args)
up_avg=[]
for item in args:
if item > avg:
up_avg.append(item)
return avg,up_avg
print(cacluate(1,2,3,4,5))
输出结果:
2. 练习二
题目要求:
编写一个函数, 接收字符串参数, 返回一个元组,‘ehllo WROLD’
元组的第一个值为大写字母的个数, 第二个值为小写字母个数.
def fun(*args):
upper_count = 0
lower_count = 0
for i in args:
if i.isupper():
upper_count += 1
elif i.islower():
lower_count += 1
else:
continue
return (upper_count, lower_count)
a = 'ehllo,WROLD'
print(fun(*a))
输出结果:
3. 练习三
题目要求:
编写函数, 接收一个列表(包含30个整形数)和一个整形数k, 返回一个新列表.
函数需求:
将列表下标k之前对应(不包含k)的元素逆序;
将下标k及之后的元素逆序;
[1,2,3,4,5] 2 [2,1,5,4,3]
import random
list = []
def fun(alist, k):
if k < 0 or k > len(alist):
return 'error key'
return alist[:k][::-1] + alist[k:][::-1]
print(fun([1, 2, 3, 4, 5], 2))
输出结果: