keil 函数最多可以传几个参数_007 函数进阶,来做一次比较正式的作业

这节课开始之前,先来解决一个小问题。最近这两节课,有人对缩进的规则不太理解,这里解释一下。

6fc5d8bdc5bb6cdbc9b051a50d95cc76.png

如上图所示,相同的缩进代表同一个代码块,即同一个顺序执行代码段落。如果代码缩进减少,则说明当前代码块结束,如果代码缩进增多,则说明当前代码块中又开辟了一个新的子代码块。

图中的 1 号代码块是总的代码块,2 号代码块属于 1 号代码块定义的函数 check 代码块,是 1 号代码块的子代码,只有调用 check 函数的时候才会执行。而 3 代码块,是上面的 if 条件代码块,只有条件成立的情况下才会执行。一个子代码块结束后,会接着按顺序运行上一级中断的代码块。


这节课我们首先回顾一下函数的结构:

b6742547f06c42e2147e0eb0b0ba5bbb.png

一个函数中可以传一个或者多个参数,如果参数太多(比如上节课最后写的自我介绍),用的时候不小心忘了参数的顺序,怎么办呢?一个方法是去查一下参数顺序,另一个方法是用位置参数(又叫关键字参数)来处理。

举例说明:

a65e3a885d2f0c21241cfff583808ba8.png

拷贝代码试一试:

# 下面请大家自我介绍一下defshow(name, age, height):    print('我的名字叫', name)    print('我今年', age, '岁')    print('我的身高是', height)# 正常参数show("凯撒", 3, 90)# 位置参数show(name="呼延杰克", age=5, height=105)# 位置参数可以随意调换顺序show(age=4, height=98, name="上官海伦")# 前面的一部分用正常参数,后面的都用位置参数,# 注意:一旦从某个参数开始用位置参数,后面的必须都用位置参数show("南宫丹尼", height=99, age=4)

位置参数理解了以后,再来了解一下默认参数。如果再函数调用的时候,发现某个参数一般情况下是固定的,特例只有少数的几个(比如同一个班级的同学的年龄,煤矿工人的性别等),那就可以将这个参数设置为默认参数。注意:默认参数必须放在其他参数的后面,必须设置默认值。

举例说明:

a2ee45ba8bceb45a49fd72f208dd18a9.png

拷贝代码试一试:

# 下面请大家自我介绍一下defshow(name, height, age=4):    print('我的名字叫', name)    print('我今年', age, '岁')    print('我的身高是', height)# 一般调用show("凯撒", 90, 3)# 使用默认参数的调用show("呼延杰克", 105)show("上官海伦", 98)

从上面的代码可以看出来,凡是不传年龄参数的,都使用了函数的默认参数,前提是函数中设置了默认参数。

到目前为止,大家已经学了不少东西了,所以这节我们来一个稍微难点的作业,希望大家多写多练:

在一个小镇,人口在一年初是population。人口每年增长率percent,而且每年有aug名新居民来到该镇。该镇需要多少年才能看到其人口大于或等于target居民?例如(假设定义的函数名字是solution):solution(1500, 5, 100, 5000) ➞ 15# (population,percent,aug,target)➞ 函数返回值solution(1500000, 2.5, 10000, 2000000) ➞ 10# 10年后人口从1500000增长到2000000solution(1500000, 0.25, 1000, 2000000), 94) ➞ 94# 94年后人口从1500000增长到2000000

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

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

相关文章

信号回勾产生的原因_燃气减压阀振动的原因及处理方案

燃气减压阀是一种自动降低管路工作压力的专门装置,作用是在给定减压范围后,可以将较高压力的介质减到给定压力。它可将阀前管路较高的液气体压力减少至阀后管路所需的水平。燃气减压阀是各装置广泛使用的仪表之一,它准确正常地工作对保证工艺…

Java判断Bigdecimal类型是否等于0的方法

1.我之前用来判断Bigdecimal类型是否等于0的方法 b.equals(BigDecimal.ZERO); 用equals方法和BigDecimal.ZERO进行比较。 2.上面方法存在的问题 有一天,调用这个这句代码的时候,传入的确实是0,但却返回false 查看源代码发现:…

c++ _mkdir无法创建文件夹_Python脚本4:根据txt文本,批量创建文件夹

背景:深度学习图像分类的时候,有许多的标签类。1000个标签就需要创建1000个文件夹,文件夹里面放入对应的图像。不可能一个一个右击创建文件夹,所以有了今天的脚本。根据txt文本每一行的类别,创建文件名为类别的文件夹。…

grep -e命令详解_grep中的正则表达式

grep是Linux中用于处理文件的工具之一。grep搜索输入文件,查找与正则表达式匹配的行,并将每个匹配的行标准输出。正则表达式是匹配一组字符串的模式。模式由操作符、构造文字字符和具有特殊意义的元字符组成。grep支持三种正则表达式语法:Basic、Extende…

幼儿课外活动游戏_泰国清迈大小学校介绍 --【Little Star小星星幼儿园】

细数清迈的大小学校,主要分为国际学校和双语学校.一般国际学校的课程设置为10%的泰语,90%的英语,一些中文国际学校设置为20%-30%中文。国际学校可按照学制区分,美制、英制、德制、IB、新加坡等一系列课程。双语学校则为40%的泰语&…

Java8 Stream集合的筛选、归约、分组、聚合详解+案例

文章目录1 Stream概述2 Stream的创建3 Stream的使用案例使用的员工类3.1 遍历/匹配(foreach/find/match)3.2 筛选(filter)3.3 聚合(max/min/count)3.4 映射(map/flatMap)3.5 归约(reduce)3.6 收集(collect)3.6.1 归集(…

liunx宝塔配置https_宝塔面板安装教程

宝塔面板安装教程原创 计科青年 今天首先登陆阿里云官网登陆你买的阿里云服务器打开服务器控制台,点击购买的服务器,点击实例,就可以看见自己的公网IP。1.下载Xshell6远程连接软件,打开软件点击文件新建这里推荐大家使用Xshell6进…

java用户角色权限管理 只显示姓_快递物流管理系统SSM,JQUERYEASYUI,MYSQL

快递物流管理系统(SSM,JQUERY-EASYUI,MYSQL)(毕业论文27564字,共78页,程序代码,MySQL数据库) 全套项目下载地址: http://woc.xin/WQBgtE【运行环境】 Eclipse, IDEA JDK1.7(JDK1.8) Tomcat7(Tomcat8)【技术栈】 JAVA, JSP, SSM, JQUERY, JQUERY EASYUI, MYSQL, HTML, CSS, JAVA…

判刑后再上诉会改判吗_近视眼手术后还会再近视反弹吗?有哪些后遗症,温州眼科专家告诉你...

经过几代的更新发展,近视眼手术的技术已相当成熟。激光近视手术受到越来越多近视患者的青睐,飞秒激光近视手术俨然成为目前矫正近视的新潮流。很多人以为,有了近视手术后便不需要注意近视的防控。轻松摘镜的背后,是彻夜狂欢&#…

dev c++调试怎么看变量的值_利用GDB调试 MSQL

原创 张政俊 老叶茶馆来自专辑MySQL修行作者:张政俊就职于中欧基金,知数堂粉丝,数据库爱好者,熟悉RDBMS、nosql、new sql等各类数据库。啃完Oreilly的《高性能mysql》、姜老师的《MySQL技术内幕》,再加上个2,3年的实战…

案例 自动办公_办公自动化案例教程(双色)(含微课)

办公自动化案例教程(双色)(含微课)ISBN:978-7-5165-1852-6作者:贺鑫 彭卫华 李胜华定价:48.00元出版社:航空工业出版社适用层次:通用出版日期:2020-05-01项目一 使用Word制作常用公文项目描述学习要点任务一 制作行政…

柱形图无数据可选中_Excel – 如何制作出上下层排列的柱形图?

如何将同一个数据表中的不同数据列排列成上下两层柱形图?案例:将下图 1 的数据表制作成柱形图,要求将销量和利润的柱形分成两个图表上下排列。效果如下图 2 所示。解决方案:1. 选中整个数据表区域 --> 选择菜单栏的“插入”--&…

html画布360图案填充_在Photoshop中创建带有图案的抽象设计

效果图知识点:应用选区工具结合图层混合模式和混合选项,创造出唯美的抽象类画册 效果设计本身由一系列同心圆组成,每组的大小各不相同。每个圆都有6个核心色板的底色,然后渐变和图案填充会增加细节和深度。我们需要创建图案填充。…

emd实现信息隐藏_EMD算法原理与实现

欢迎关注我们,选择加"星标"或“置顶”更多技术,第一时间送达SSVEP信号中含有自发脑电和大量外界干扰信号,属于典型的非线性非平稳信号。传统的滤波方法通常不满足对非线性非平稳分析的条件,1998年黄鄂提出希尔伯特黄变换…

转为yaml python_python 如何使用HttpRunner做接口自动化测试

作者:星安果 来源:AirPython1. 前言原始测试金子塔包含 3 层,分别是:UI 自动化测试、接口服务测试、单元测试其中,单元测试是对软件的最小可测试单元进行检查和验证,也是产生效率最大的一项测试接口服务测试…

eq值 推荐算法_利用 SVD 实现协同过滤推荐算法

奇异值分解(Singular Value Decomposition,以下简称SVD)是在机器学习领域广泛应用的算法,它不光可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域。优点:简化数据,去除噪声&#x…

打开数据库_打开这份指南,数据库运维也能优雅、简单!

对于常规数据库的运维监控来说,如何能够快速简洁的发现问题,直达问题本质并解决常见问题,是 Bethune 的安身立命之本。简约,优雅,专业,直抵本心,这是用户对 Bethune 的评价。Bethune X 功能强大…

mysql集群_MySQL集群

MySQL集群搭建之主从复制: 主从复制原理: 从库生成两个线程,一个I/O线程,一个SQL线程; i/o线程去请求主库 的binlog,并将得到的binlog日志写到relay log(中继日志) 文件中; 主库会生成一个 log dump 线程,用来给从库 i/o线程传binlog; SQL 线程,会读取relay log文件中…

mysql 数据库操作类_【数据库操作类】10个php操作数据库类下载

数据库(Database)操作是在开发过程中重要的组成部分,熟练掌握数据库的操作是开发人员必备的武器。PHP中文网为大家提供了各种封装好的php数据库操作类库,供大家下载和学习。相关mysql视频教程推荐:《mysql教程》php各种数据库操作类库下载PDO…

程序员需要知道的职场真相

关于面试谈薪: 1. 你值多少钱,不是由老板决定的,也不是由你自己的能力决定,而是由市场决定的。这个技术就你一个会,你说多少钱就多少钱。这个技术 100W人会,不好意思,肯定是公司在一定的时间内&…