栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python中函数例题_Python函数例题?

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python中函数例题_Python函数例题?

1.编写一个名为collatz()的函数,它有一个名为number的参数,如果参数是偶数,那么collatz()就打印出number//2,如果number是奇数,collatz()就打印3*number+1

def collatz(number):
    if number % 2==0:
        print(number//2)
    else:
        print(3*number+1)

collatz(4)

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

def cacluate(*num):
    li = []
    avg = sum(num)/len(num)
    for i in num:
        if i > avg:
            li.append(i)
    return int(avg),li


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

 

3.编写函数, 接收一个列表(包含10个整形数)和一个整形数k, 返回一个新列表.

 函数需求: 将列表下标k之前对应(不包含k)的元素逆序;

 将下标k及之后的元素逆序;

def fun(list,k):
    if k<0 or k>len(list):
        return 'error key'
    else:
        return list[:k][::-1]+list[k:][::-1]

print(fun([1,2,3,4,5,6,7,8,9,10],3))

 4.模拟轮盘抽奖游戏

轮盘分为三部分: 一等奖, 二等奖和三等奖;轮盘转的时候是随机的,

如果范围在[0,0.08)之间,代表一等奖,如果范围在[0.08,0.3)之间,代表2等奖,

如果范围在[0.3, 1.0)之间,代表3等奖。

import random

rewardDict = {
    '一等奖': (0, 0.08),
    '二等奖': (0.08, 0.3),
    '三等奖': (0.3, 1)
}

def rewardFun():
    """用户得奖等级"""
    # 生成一个0~1之间的随机数
    num = random.random()
    # 判断随机转盘转的数是几等奖
    for k, v in rewardDict.items():
        # 这里的v是元组
        if v[0] <= num < v[1]:
            return k

resultDict = {}

for i in range(1000):
    # res:本次转盘的等级(一/二/三等奖)
    res = rewardFun()
    if res not in resultDict:
        resultDict[res] = 1
    else:
        resultDict[res] = resultDict[res] + 1

for k, v in resultDict.items():
    print(k, '---------->', v)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/782983.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号