函数练习---可变参数练习

函数练习—可变参数练习

练习1:

编写一个函数cacluate, 可以接收任意多个数,返回的是一个元组.
元组的第一个值为所有参数的平均值, 第二个值是大于平均值的所有数.

def cacluate(*args):
    sum_num=sum(args)
    # print(sum_num)
    ave_num=int(sum(args)/len(args))
    # print(ave_num)
    li=[]
    for i in args:
        if i > ave_num:
            li.append(i)
    return (ave_num,li)

print(cacluate(1,2,3,4,5))

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

练习2:

编写一个函数, 接收字符串参数, 返回一个元组,‘ehllo WROLD’
元组的第一个值为大写字母的个数, 第二个值为小写字母个数.

def st(*args):
    a=args[0]
    upper=0
    slower=0
    for i in a:
        if i.isupper() == True:
            upper += 1
        if i.islower() == True:
            slower += 1
    return (upper, slower)

print(st('ehllo,WROLD'))

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

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

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

发布了97 篇原创文章 · 获赞 22 · 访问量 3295

猜你喜欢

转载自blog.csdn.net/nigar_/article/details/103669548
今日推荐