HSP_06章_Python_函数

文章目录

  • P67 函数入门
    • 1. 基本语法
    • 2. 函数的调用
    • 3. 函数的注意事项和使用细节
  • P71 递归机制
    • 1. 基本介绍
    • 2.递归能解决什么问题
    • 3. 递归的重要规则
  • P72 函数作为参数传递
  • P73 lambda匿名函数
  • P74 全局变量和局部变量

P67 函数入门

1. 基本语法

在这里插入图片描述

2. 函数的调用

在这里插入图片描述

3. 函数的注意事项和使用细节

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

P71 递归机制

1. 基本介绍

1、简单的说: 递归就是函数自己调用自己,每次调用时传入不同的值
2、递归有助于编程者解决复杂问题,同时可以让代码变得简洁

2.递归能解决什么问题

1、各种数学问题如:8皇后问题,汉诺塔,阶乘问题,迷宫问题等等。
2、各种算法中也会使用到递归,比如快排,归并排序,二分查找,分治算法等.
3、将用栈解决的问题->递归代码比较简洁

3. 递归的重要规则

在这里插入图片描述

P72 函数作为参数传递

def f2(num1,num2):max1 = num1 if num1 > num2 else num2return max1,num2+num1def f1(fun ,n1,n2):return fun(n1,n2)# 测试
x,y = f1(f2,10,20)
print(f"x={x},y={y}")
  • 注意事项和细节
  1. 函数作为参数传递,传递的不是数据,而是业务数据处理逻辑
  2. 一个函数,可以接受多个函数作为参数传入

P73 lambda匿名函数

  1. 基本介绍
    在这里插入图片描述
  2. 函数的定义
    在这里插入图片描述
  3. 匿名函数基本语法

在这里插入图片描述
4. 实例

def f1(fun,num1,num2):# print(f"fun类型: {type(fun)}")return fun(num1,num2)
# 匿名函数
# 不需要return ,运算的结果就是返回值
lambda n1 ,n2 : n1 if n1 > n1+1 else n1+1max_val = f1(lambda a,b: a if a>b else b,12,10)
print(f"max_val = {max_val}")

P74 全局变量和局部变量

  1. 基本介绍
    在这里插入图片描述
  2. 注意事项和使用细节
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    ps: 此处n1的值会发生改变

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/7636.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅谈操作系统中的重要概念——线程(3)——设计模式

文章目录 一、什么是设计模式?二、单例模式2.1、饿汉模式2.2、懒汉模式2.3、多线程情况下调用 饿汉模式与懒汉模式 谁是安全的??(重点) 三、工厂模式 一、什么是设计模式? 设计模式就相当于菜谱&#xff0…

虚拟机文件夹共享操作(本地访问)

新建一个文件夹 右击文件夹点击属性 找到共享 点击共享 选择本地用户共享就可以了 本地winr 输入我们图片中的格式(IP前加 “\\” ) 会弹一个窗口,输入虚拟机的入户名和密码就可以共享了(一般默认用户名都是administrator&am…

2.3.1 语言大模型的预训练

模块化大模型 接口安全: 模块化设计意味着不同的模块需要通过定义良好的接口进行交互。如果这些接口没有得到适当保护,它们可能成为攻击者的攻击目标,攻击者可以通过这些接口注入恶意数据或提取敏感信息。 数据泄露风险: 在模块化…

C++笔记:类与对象(三)->多态

多态 虚函数 先来看一段代码&#xff1a; #include<iostream> using namespace std;class Animal { public :void run() {cout << "I dont know how to run" << endl;} };class Cat : public Animal{ public :void run() {cout << "I …

【毕业设计】基于微信小程序的校园快递平台系统设计与实现

1.项目介绍 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统校园快递平台系统信息管理难度大&#xff0c;容错率…

让我们把Domino变成SFTP服务器

大家好&#xff0c;才是真的好。 远程共享文件有很多办法&#xff0c;其中值得注意的是SFTP方式。SFTP即SSH文件传输协议&#xff0c;通过使用SSH传输层&#xff0c;SFTP可以通过Internet连接安全地访问和移动大量数据文件。 今天我们就介绍使用Domino中的HTTP OSGI方式来实现…

AI代理:未来技术的革命者

在人工智能的众多分支中&#xff0c;AI代理&#xff08;AI Agent&#xff09;无疑是最具变革性的一环。这种高级软件系统能自主完成任务&#xff0c;模仿人类决策过程来优化和执行复杂的工作流程。 它们的智能不仅限于执行固定指令&#xff0c;更能理解并智能响应复杂环境。从…

如何自己快速的制作流程图?6个软件教你快速进行流程图制作

如何自己快速的制作流程图&#xff1f;6个软件教你快速进行流程图制作 自己制作流程图可以是项目管理、流程设计或教学展示中的重要环节。以下是六款常用的流程图制作软件&#xff0c;它们都提供了快速、简单的方式来制作流程图&#xff1a; 迅捷画图&#xff1a;这是一款非…

Git 常用操作记录

keywords: Git, 版本控制 常用命令 功能命令添加文件/更改到暂存区git add filename添加所有文件/更改到暂存区git add .提交git commit -m msg从远程仓库拉取最新代码git pull origin master推送到远程仓库git push origin master查看配置信息git config --list查看文件列表…

【TensorFlow深度学习】加载经典数据集MNIST的实战步骤

加载经典数据集MNIST的实战步骤 1. 数据集概览2. 自动加载MNIST数据集3. 数据预处理4. 转换为TensorFlow Dataset对象5. 数据集的随机打散与批量处理6. 数据预处理函数的应用结语 在深度学习的实践中&#xff0c;加载经典数据集是入门及进阶学习不可或缺的一环。MNIST数据集作为…

Springboot集成feign远程调用

需求&#xff1a;在leadnews-wemedia微服务里需要调用leadnews-article微服务的接口。新建一个支持feign调用的名为heima-leadnews-feign-api的模块 heima-leadnews-feign-api的pom文件里导入openfeign依赖 <dependency><groupId>org.springframework.cloud</g…

echarts学习笔记:柱状图+雷达图+双环形图+地图可视化+数据传递关系图+关键词条图+数据总览图+AntV/G2/DataV

GitHub - lgd8981289/imooc-visualization: https://www.bilibili.com/video/BV1yu411E7cm/?vd_source391a8dc379e0da60c77490e3221f097a 课程源码 国内echarts镜像站&#xff1a;ISQQW.COM x ECharts 文档&#xff08;国内同步镜像&#xff09; - 配置项 echarts图表集&…

openGauss学习笔记-277 openGauss性能调优-实际调优案例06-改写SQL消除子查询(案例1)

文章目录 openGauss学习笔记-277 openGauss性能调优-实际调优案例06-改写SQL消除子查询(案例1)277.1 现象描述277.2 优化说明openGauss学习笔记-277 openGauss性能调优-实际调优案例06-改写SQL消除子查询(案例1) 277.1 现象描述 select 1,(select count(*) from normal_d…

618挑选家用洗地机,需要注意哪些事项?有哪些家用洗地机值得买?

近年来&#xff0c;智能清洁家电越来越受到消费者的欢迎&#xff0c;洗地机作为清洁家电的新宠&#xff0c;凭借其集扫地、拖地、杀菌清洗于一体的强大功能&#xff0c;成为市场上的热销产品。那么&#xff0c;这类洗地机真的好用吗&#xff1f;怎么挑选到好用的家用的洗地机呢…

Java基础学习:Dozer映射框架

文章目录 一、Dozer 介绍二、Dozer的API映射方式三、使用1、java程序2、springboot项目&#xff08;1&#xff09;引入依赖&#xff08;2&#xff09;声明工具类&#xff08;3&#xff09;工具类委托spring管理 一、Dozer 介绍 Dozer是一个Java工具&#xff0c;主要用于在相同…

win10下,svn上传.so文件失败

问题&#xff1a;win10下使用TortoiseSVN&#xff0c;svn上传.so文件失败 解决&#xff1a;右键&#xff0c;选择Settings&#xff0c;Global ignore pattern中删除*.so&#xff0c;保存即可。

设置多用户远程登录windows server服务器

##设置多用户远程登录windows server服务器 ###1、远程登录windows server 2016 运行—>mstsc—>远程IP地址—>用户和密码 2、远程windows服务器设置多用户策略 运行—>gpedit.msc->计算机配置—管理模板—windows组件—远程桌面服务—远程桌面会话主机----连…

Unity调用智谱API(简单操作 文本实时翻译)

代码展示&#xff1a; using Newtonsoft.Json; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Networking; using UnityEngine.UI;public class ZhiPuAi : MonoBehaviour {// API的端点URLpublic string…

linux复习

与"区别 在Linux中&#xff0c;单引号&#xff08;&#xff09;和双引号&#xff08;"&#xff09;用于定义字符串&#xff0c;但它们在处理变量扩展和转义字符时有所不同。以下是具体分析&#xff1a; 1. **变量扩展**&#xff1a;在双引号内&#xff0c;变量可以…

阿里巴巴1688商品详情API返回值深度剖析:精准获取商品信息的关键

在电子商务日益繁荣的今天&#xff0c;阿里巴巴1688作为中国领先的B2B平台&#xff0c;汇聚了海量的供应商和商品信息。对于商家、开发者以及希望深入了解商品数据的用户来说&#xff0c;如何通过有效的方式获取这些商品信息成为了一个重要议题。阿里巴巴1688商品详情API的出现…