当前位置: 首页 > backend >正文

DAY 26 函数专题1

函数定义与参数知识点回顾:1.    函数的定义2.    变量作用域:局部变量和全局变量3.    函数的参数类型:位置参数、默认参数、不定参数4.    传递参数的手段:关键词参数5

题目1:计算圆的面积

  1. 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 = π * radius² (可以使用 math.pi 作为 π 的值)
  2. 要求:函数接收一个位置参数 radius。计算半径为5、0、-1时候的面积
  1. 注意点:可以采取try-except 使函数变得更加稳健,如果传入的半径为负数,函数应该返回 0 (或者可以考虑引发一个ValueError,但为了简单起见,先返回0)。
import mathdef calculate_circle_area(radius):"""计算圆的面积。如果传入的半径为负数,返回 0。:param radius: 圆的半径:return: 圆的面积"""try:if radius < 0:return 0return math.pi * radius ** 2except Exception:return 0# 计算半径为 5、0、-1 时的面积
print("半径为 5 时的面积:", calculate_circle_area(5))
print("半径为 0 时的面积:", calculate_circle_area(0))
print("半径为 -1 时的面积:", calculate_circle_area(-1))

题目2:计算矩形的面积

  1. 任务: 编写一个名为 calculate_rectangle_area 的函数,该函数接收矩形的长度 length 和宽度 width 作为参数,并返回矩形的面积。
  2. 公式: 矩形面积 = length * width
  3. 要求:函数接收两个位置参数 length 和 width。
    • 函数返回计算得到的面积。
    • 如果长度或宽度为负数,函数应该返回 0。
def calculate_rectangle_area(length, width):"""计算矩形的面积。如果长度或宽度为负数,返回 0。:param length: 矩形的长度:param width: 矩形的宽度:return: 矩形的面积"""# 检查长度或宽度是否为负数if length < 0 or width < 0:return 0# 计算并返回矩形的面积return length * width# 测试示例
print("长度为 5,宽度为 3 时的面积:", calculate_rectangle_area(5, 3))
print("长度为 -1,宽度为 3 时的面积:", calculate_rectangle_area(-1, 3))
print("长度为 5,宽度为 -2 时的面积:", calculate_rectangle_area(5, -2))
print("长度为 0,宽度为 0 时的面积:", calculate_rectangle_area(0, 0))

题目3:计算任意数量数字的平均值

  1. 任务: 编写一个名为 calculate_average 的函数,该函数可以接收任意数量的数字作为参数(引入可变位置参数 (*args)),并返回它们的平均值。
  2. 要求:使用 *args 来接收所有传入的数字。
    • 如果没有任何数字传入,函数应该返回 0。
    • 函数返回计算得到的平均值。
def calculate_average(*args):"""计算任意数量数字的平均值。如果没有传入任何数字,返回 0。:param args: 任意数量的数字:return: 这些数字的平均值"""# 检查是否没有传入任何数字if not args:return 0# 计算所有数字的总和total = sum(args)# 计算平均值return total / len(args)# 测试示例
print("传入 1, 2, 3, 4, 5 时的平均值:", calculate_average(1, 2, 3, 4, 5))
print("传入 10, 20, 30 时的平均值:", calculate_average(10, 20, 30))
print("没有传入数字时的平均值:", calculate_average())

题目4:打印用户信息

  1. 任务: 编写一个名为 print_user_info 的函数,该函数接收一个必需的参数 user_id,以及任意数量的额外用户信息(作为关键字参数)。
  2. 要求:
    • user_id 是一个必需的位置参数。
    • 使用 **kwargs 来接收额外的用户信息。
    • 函数打印出用户ID,然后逐行打印所有提供的额外信息(键和值)。
    • 函数不需要返回值
      def print_user_info(user_id, **kwargs):"""打印用户ID和额外的用户信息。:param user_id: 必需的用户ID:param kwargs: 任意数量的额外用户信息"""# 打印用户IDprint(f"用户ID: {user_id}")# 遍历并打印所有额外的用户信息for key, value in kwargs.items():print(f"{key}: {value}")# 测试示例
      print_user_info(123, 姓名="张三", 年龄=25, 职业="程序员")

      @疏锦行

http://www.xdnf.cn/news/13253.html

相关文章:

  • 如何在Shopify中集成API
  • break 语句和 continue 语句
  • 基于ThinkPHP8.*的后台管理框架--Veitool框架学习使用
  • 免费批量抠图工具使用说明
  • OD 算法题 B卷【最大岛屿体积】
  • Day1 java基础知识
  • raid存储技术
  • vs code无法ssh远程连接linux机器----解决方案
  • BugKu Web渗透之程序员本地网站
  • MQTT示例体验(C)
  • LangChain4j(18)——通过Xinference调用Rerank模型
  • 打卡Day49
  • Windows11+VS2019配置Libigl-2.4.1
  • EasyImage实战:结合内网穿透技术实现私有图床部署过程
  • DBLP数据库是什么?
  • 如何用 esProc SPL 操作大 csv
  • Linux【5】-----编译和烧写Linux系统镜像(RK3568)
  • MIPI信号为什么不能进行长距离传输
  • 相关类可视化图像总结
  • 第二十三课:手搓随机森林
  • 基于PSO与BP神经网络分类模型的特征选择实战(Python实现)
  • C语言中提供的第三方库之哈希表实现
  • 比较数据迁移后MySQL数据库和达梦数据库中的表
  • 深入实战多平台抓包:Sniffmaster与常见抓包工具协同利器解析
  • 前端绘制道路鱼骨图
  • 502的普通频谱参数设置
  • 红外测温传感器如何提升智能制造水平?
  • 学习时困了怎么办
  • 2020年IS SCI2区,多样本和遗忘能力粒子群算法XPSO,深度解析+性能实测
  • Python打卡day49!!!