【数据科学导论】实验二:函数调用

简介: 【数据科学导论】实验二:函数调用

函数调用

实验目的

  • 掌握创建函数的方法
  • 掌握调用函数的方法
  • 掌握无返回值的函数的作用
  • 理解应用于函数的函数

实验设备

  • Jupter Notebook

实验内容

1.(30分)

根据函数的docstring完成以下函数的主体。

提示:Python有一个内置函数round

round() 方法返回浮点数x的四舍五入值。

round()方法的语法:

round( x [, n] )

参数

  • x:数值表达式。
  • n:数值表达式,表示从小数点位数。
def round_to_two_places(num):
    """返回给定的四舍五入到小数点后两位的数字。 
    >>> round_to_two_places(3.14159)
    3.14
    """
    # 用你自己的代码替换这个部分。
    # ("pass" 是一个关键字,它什么都没做,我们使用它作为占位符,
    # 因为在开始一个代码块之后,Python至少需要一行代码)
    return round(num, 2)   

函数测试

round_to_two_places(4.2562)
4.26

2.(30分)

round的帮助说明ndigits(第二个参数)可能为负。

你认为它会发生什么?在下面的单元格中尝试一些示例?

# Put your test code here
round(123456789,-3)
123457000

你能想出一个有用的例子吗?

可以写一个你能想到的例子

round(9634057,-5)
9600000

3.(40分)

在之前的一个编程问题中,分享糖果的朋友爱丽丝、鲍勃和卡罗尔试着平均分糖。为了他们的友谊,任何剩下的糖果都会被打碎。例如,如果他们一共有91个糖果,他们将每人拿走30个,并砸碎1个。

下面是一个简单的函数,它将为任何个总糖果数计算要粉碎的糖果数量。

修改它,使它有选择地接受第二个参数,该参数表示糖果被平分的朋友数。如果没有提供第二个参数,它应该像以前一样假设3个朋友。

更新docstring以反映此新行为。

def to_smash(total_candies):
    """返回在3个朋友之间平均分配给定数量的糖果后必须粉碎的剩余糖果数量。
    >>> to_smash(91)
    1
    """
    return total_candies % 3

函数测试

假设有四个朋友,糖果数分别为23,36,53,46,调用函数,计算要砸碎的糖果数

#Put your test code here
def to_smash(total_candies, n_friends=3):
    """返回在n个朋友之间平均分配给定数量的糖果后必须粉碎的剩余糖果数量。
    默认为3个朋友
    >>> to_smash(91, 4)
    3
    """
    return total_candies % n_friends
#假设有四个朋友,糖果数分别为23,36,53,46,调用函数,计算要砸碎的糖果数
sum=23 + 36 + 53 + 46
print("sum=", sum)
to_smash(sum,4)
sum= 158
2


目录
相关文章
|
Docker 容器
Docker服务启动失败报错:Job for docker.service failed because the control process exited with error code.
Docker服务启动失败报错:Job for docker.service failed because the control process exited with error code.
|
存储 分布式计算 视频直播
阿里云服务器的十二种典型应用场景:解锁云计算的无限可能
场景概述: 区块链技术在金融、供应链管理等领域有着广泛的应用。阿里云提供了区块链服务BaaS,支持联盟链的快速部署和管理。
|
存储 缓存 运维
解密一致性哈希算法:实现高可用和负载均衡的秘诀
解密一致性哈希算法:实现高可用和负载均衡的秘诀
1689 0
|
2天前
|
云安全 人工智能
2025,阿里云安全的“年度报告”
拥抱AI时代,阿里云安全为你护航~
1439 1
|
9天前
|
云安全 人工智能 算法
以“AI对抗AI”,阿里云验证码进入2.0时代
三层立体防护,用大模型打赢人机攻防战
1415 10
|
9天前
|
机器学习/深度学习 安全 API
MAI-UI 开源:通用 GUI 智能体基座登顶 SOTA!
MAI-UI是通义实验室推出的全尺寸GUI智能体基座模型,原生集成用户交互、MCP工具调用与端云协同能力。支持跨App操作、模糊语义理解与主动提问澄清,通过大规模在线强化学习实现复杂任务自动化,在出行、办公等高频场景中表现卓越,已登顶ScreenSpot-Pro、MobileWorld等多项SOTA评测。
1330 7
|
10天前
|
人工智能 Rust 运维
这个神器让你白嫖ClaudeOpus 4.5,Gemini 3!还能接Claude Code等任意平台
加我进AI讨论学习群,公众号右下角“联系方式”文末有老金的 开源知识库地址·全免费
1214 15
|
4天前
|
人工智能 前端开发 API
Google发布50页AI Agent白皮书,老金帮你提炼10个核心要点
老金分享Google最新AI Agent指南:让AI从“动嘴”到“动手”。Agent=大脑(模型)+手(工具)+协调系统,可自主完成任务。通过ReAct模式、多Agent协作与RAG等技术,实现真正自动化。入门推荐LangChain,文末附开源知识库链接。
455 118
|
2天前
|
机器学习/深度学习 测试技术 数据中心
九坤量化开源IQuest-Coder-V1,代码大模型进入“流式”训练时代
2026年首日,九坤创始团队成立的至知创新研究院开源IQuest-Coder-V1系列代码大模型,涵盖7B至40B参数,支持128K上下文与GQA架构,提供Base、Instruct、Thinking及Loop版本。采用创新Code-Flow训练范式,模拟代码演化全过程,提升复杂任务推理能力,在SWE-Bench、LiveCodeBench等基准领先。全阶段checkpoint开放,支持本地部署与微调,助力研究与应用落地。
332 1