函数的练习

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))

输出结果:
在这里插入图片描述

发布了60 篇原创文章 · 获赞 6 · 访问量 1358

猜你喜欢

转载自blog.csdn.net/weixin_45775963/article/details/103700600
今日推荐