00:00
那么从这一章开始呢,我们将为大家讲解一下函数,首先我们要了解的第一个概念就是关于函数的概念,就是什么是函数是我们先要了解的。那什么是函数呢?那从它的英文单词我们就可以看出来一定的意义,首先函数的英文单词叫做for啊,这是它的英文,这是它的英文,那function到底是什么意思呢?它有两个中文意思,一个叫做什么呢?函数啊,这是在我们计算机方面使用或者数学方面使用的,另外一个意思叫做功能,所以从这块我们其实可以看出一定的端倪来,是不是。那什么是函数呢?函数就是一个特定功能的语法结构啊,就是一个具有特定功能的。语法结构。啊,就这么简单,这就是函数,那函数到底有什么作用呢?来,我们来看一下函数的作用啊,函数的作用哎,我们来举一个小例子,让大家来更加快速的理解,首先我们新建一个pth文件啊,新建一个pthon文件,OK,然我们呢,我们写上MY下线扣的四下线零一啊,这我们第一个文件,然后OK,创建成功,然后在这里干什么事呢?我们输出一个。
01:17
什么呢?输出一个功能啊,或者叫输出一个循环,这个循环用来生成什么呢?用来生成一行星星行不行来。叫做输出一行星星,那这个简单啊,首先我们写一个I等于零,Will I小于数枝,你随便定呗,比如说小于十个行不行小于十个,然后我们输出一下print,我们的什么星星一个就可以了,那么这种情况下,大家知道它会输出什么呀?十行每行只有一个星星,对不对?那这是它的运行结果,大家来看一下啊,十行每行一个,但是我不要这样了,我要一行写十个,那怎么办呢?And等于空字串是不是教过大家,好了,这样的话,我们可以看到十个星星在一行出现了,好,那我们输出了一行星星,那如果老板让你什么呢?让你输出十行星星,你该怎么办呢?输出十行星星干什么事?我把这个星星干什么事儿啊?写一个循环是不是就可以了啊,一行写个循环嘛,是不是这就十行星星,就是十行十列的一个星星,好嘞,给大家输出一个十行十列星星啊输出。
02:27
出十行十列,输出十行十列的星星,实际上这就相当于把循环的作业给做了,对不对,十行十列的星星,那在这里边我们可以什么呢?哎,首先先写一个一行星星,把一行星星留下来之后干什么事呢?把它当做一个整体,循环十次是不是就出来十行了,是不是?所以在这里边干什么事呢?哎,我们准备叫做循环生成十行啊循环生成十行这个也不难嘛,写一个J等于写错了,我们生明一个变量啊,用来控制行数行不行,那就是J等于零,Well j小于十啊小于十,然后这个时候干什么事呢?先输出一行星星啊,输出一行星星,然后干什么事呢?两行之间需要换行对不对?输出一个换行,然后干什么事呢?变量自增,变量自增操作啊,那在。
03:27
在这里变量简单,无非就是J加等于一呗。加等于一,然后输出一个货行,大家也会不是print什么都不输出,是不是就一个货行,是不是那一行星咱刚是不是刚好写过了,是把它整体当做一个内容放到你一个新星输出,注意缩减哦,那这样的话我们就得到一个十行实链的星星了,你看非常简单的一个效果,这其实是双重循环的一个签到,是不是20列是不是好很多,说第一行怎么20个呀,那是因为我们上面的代码就是第一个没有注释啊。那这个跟函数有关系吗?目前来说还没有,但是大家接下来看啊,如果说老板还有其他的要求,比如说老板说了输出再输出啊,再输出一个,十行十列的再输出一个。
04:16
11个啊,十行。十行十列的星星,那能说在家循环啊,当老板说你再输出一个,那你在加循环,在家循环是没有问题,那老板还有可能会说啊,你再输出一个什么呀,五行五列的星星,是不是再输出一个五行五列的星星。那这个时候你写循环是不是写是吧,给这个十行时的星星,这套循环是不是就不好使了,是不是?所以为了应对这种情况,我们干脆什么呢?把这个星星或者叫输出十行十列,这样星星做成一个特定的功能干什么功能呢?就是用来生成几行几列星星的行不行?那在这里边比如说老板说要做一个长时练习性,大家很简单的可以做到,就是复制一份呗,是不是?那但是复制一份代码量也是不少的,十行左右的是不是?那这样的话又可得到一个,然后再有个十行十的星又得到一个是不是,但是这样的话还是相对复杂,于是乎我们想了一招,什么招呢?那既然老板要求输出了好几次十行十列星星,我干脆就把这个十行十列的星星直接做成一个整体来使用,就跟我们之前使用什么呀,上面这个一行十列一样,那怎么来做呢?看好了,我们是这样来完成的,把刚刚十行十列的星星,这不是十行十行十列星星吗?
05:38
直接复制一份,然后给它做成一个整体啊,将输出十行十列,十行十列的星星作为一个整体,一个作为一个整体来使用,那很多人这怎么作为一个整体啊,这就用到函数的结构了啊整体那咱说了函数是不是特定功能啊,我这个功能很明确,就是十十类星星啊,所以我们可以这样做,用函数的语法咱还没有学到啊,写上my start。
06:09
就是我的星星套上挂了。那在里边把实十类的新星直接放在这个代码组里边就可以了,也就是说我新定义了一个代码组啊,这里边新定义了一个代码组新。的代码组结构啊,新的代码组,这个代码组其实就是函数的代码组啊,那也说我给这个十昂谁的星星起了一个名字,叫什么名字叫做my star啊,DF是定义my star是你给它起的名字,你叫your star也可以随便起名字,然后右键运行大家会发现。没有任何事情发生,但是你看好了,老板如果说要一个十行十列的星星,我不需要把上面的是那个循环再写一份了,直接什么叫这个函数的名,你直接说一声,说比如说my star。意思就是,诶,我要使用这个函数,那么这个功能就得以操作十行十列的行星产生了一次,然后呢,如果你还需要上十时的信息,不需要再写上面的代码了,再叫它一次就可以了,你看这就是我们把一个特定的功能做成一个整体,其实就是函数,然后通过你想用这个功能的时候,直接叫函数的名称,就可以调用这个整体,当然这个大家分不开啊,二长大家分不开,为了大家分开,我在中间输出一个横线吧,行不行,大家看出来啊。
07:29
阳线右肩运行一遍,那看两个实行序列看到没有,这是往上拉了吧,好吧。这是一个实20列,两个实十列,如果你要做到什么五行五列的话,我们函数都可以实现,但是呢,现在还离那个有点远,所以我现在只是给大家介绍一下它的功能或者叫它的作用,大家也看到了,我把我们之前的特定功能做成一个整体,或者叫做成一个函数的话,以后用的时候就不用什么呀,再写代码了,直接叫它一声,它就出来了,哎,就是这么回事,虽然函数的作用叫什么东西呢?叫做提高代码重用率啊。
08:05
提高代码的复用率或者叫重用率都可以啊,其实这个东西还是循环用这个功能对不对,然后呢,提高开发效率啊,因为你这样用起来是更方便了,同时干什么事儿呢,减少后期的维护成本。因为这样以后要改的话,你把这个什么呀,My star里边东西一改,比如说我要写成一个三行实列的,那么你这一改,所有调用这个函数或者这个功能的东西都变成了三个系列,是不是维护起来也更加方便了,这就是函数的一个作用,那现在为止只是给大家简单的介绍一下函数的定义和函数的特征,当然函数的具体内容我要详细给大家来讲解,好吧,好了,那我们既然知道了函,什么是函数以及函数的作用。那么我们下面来看一下函数怎怎么定义,好吧,那咱们要讲的是定义函数,那如何定义函数呢?函数属于代码组,自然有自己的结构了,是不是?所以我们给大家介绍一下基本的函数结构啊。函数的结构怎么定义呢?首先用到DEF关键字,这个不能变啊,DEF就是def DeFine音译的单词关键字,但是在其他语言中可能比较常用的是方,对不对,好,但没关系,我们就后面写一个函数名。
09:22
函数名就是你这个函数未来要用的时候,是不是得叫名字是不是,所以你给起的一个名字才行,你得给它起个名字,名字后面要带一个括号,括号后面冒号代码组的第一句就算完成了,然后后面就是什么呀,函数的内容了啊,函数中的内容啊,或者叫做实现函数功能的代码,实现函数功能的代码,这个代码有多少句就无所谓了,你想写多少句写多少句啊,这样一来的话,我们就声明了一个函数,或者叫这就是一个函数的基本定义。函数的基本定义好了,有了这个结构之后,我们就可以自己来写一个函数试试,当然咱开始不要写这个这个星星这么复杂,写个简单点的好不好,那在这里边我们新建一个文件右件新建一个文件啊pthon文件麦下线code的,然后呢四下线零二。
10:15
来确认一下,再给大家一下定义函数啊,给大家讲一下定义函数。定义函数,好,我们先从最基本的函数开始定义啊,或者叫做基本函数,定义一个基本函数的结构,首先DF,然后呢,第二个什么东西呢?第二个起一个名字对不对?很多说起函数名该起什么样的名呢?这个我们可以自己来定义,你想叫什么样的名字就叫什么样的名字,比如说我们刚刚是不是叫my star小星星是不是,那这次我要做一个太阳,My soon,看画我的太阳是不是?然后我们就可以在这里边写你要的功能了,想写什么功能就写什么功能,比如说我们的功能非常简单,就输出了一个太阳带给我们温暖啊,太阳带给我们爱与温暖,写错了爱与温暖。
11:07
好,我的功能非常简单,我这个函数的功能就是什么呀,就是一个输出一个文字呗,或者叫输出一句文字呗,是不是定义了一个输出一句话的函数,那么这个时候既然定义成了函数,你想运行程序,你会发现这个东西是什么呀,没有结果的函数有一个最大的特征,就是这是它的特征啊,什么特征呢?不调用不会执行。不调用不会执行,也就是说函数你定义完了之后,实际上是保存在内存当中,但是呢,它不会主动去执行,因为很简单一个道理啊,系统中有很多函数的,如果你不调用就会执行的话,打开页面是不是就乱七八糟什么都出来了,是不是?所以函数特征不调用不会执行,你想让我们的函数能够执行里边的代码,就要做一个操作,什么呢?调用函数。
12:00
其中调用函数非常的简单,干什么事呢?只需要叫它的名字就可以了,只需要叫它名字就可以了,于是我们这个名字不叫my soon,那你就my soon方块就可以了,这就是调用函数,调用函数的结果就是函数中的内容执行一遍,看到没有,太阳带给我们爱与温暖是不是?然后调用函数可以调用几次呢?无限次,只要你需要你就可以调用,只要你需要就可以调用,调用两次,调用三次,调用四次都可以,看见没有,哎,写错了,哪块有个语法错误啊啊,这块多了个波浪线啊,来,右键运行一遍,你看是不是四次就出来啊,想调用几次就调用几次,这就是函数中的基本函数。在这里边我们知道了函数的一个特点,不调用不会执行,并且需要注意呀,必须在什么呀,调用函数之前定义函数,你不能说诶放后边这就晚了啊,你不能说把它放后边这就晚了,明白啊,这原因啊,很简单,函数实际上它的本质是。
13:00
一种什么呀,变量函数名本质是一种变量啊,函数本身一种数据,你当然得先什么呀,先赋值才能使用了,对不对啊,当然还有更好理解的,就是大家看电视的时候。无论是什么西门吹雪,什么叶孤城决斗呀,还是什么呀,还是什么各种动画片里边的大招啊,是不是大家都会发现什么呀这个。我们在使用的时候都会先叫一别人大招的名字,然后再用招,是不是这表示什么呀?这表示还像这个大招就像天外飞仙一样啊,这个大招就得先定义啊,这这招叫天外飞仙,然后我叫一声天外飞仙哎,就可以使出大招来了,是不是就这个效果啊,好了,在这里边需要给大家讲一个东西,什么东西关于函数命名的问题啊,这个大家这样解啊,来这里边啊,讲一下函数的特征啊。特征。特征啊,第一个我们就说了,函数不调用啊,不调用不会执行啊,不调用不会执行,然后第二个特征是函数可以调用N次,不受限制啊,函数可以调用N次,调用N次。
14:13
不受限制,没说只能调两次啊,不受次数限制,然后呢,下一个我们要给大家介绍的就是关于函数的名称问题,函数名的定义啊,函数名的声明吧,或者叫定义吧的定义,函数名可以随便起名字吗?其实也不是啊,其实也不是,函数名的使用也有它的什么呢?也有它的这个。规范所在,那什么规范呢?给大家看一个东西就知道了,在我们文件当中,我这个函数定义完了之后,我想查看函数,函数的数据类型,很多人,哎呀函数有数是数据类型吗?大家之前学过有六大标准数据类型是不是,但是没里边没有函数,那为什么呢?因为函数并非标准数据类型中的一种,它但是它也是一种数据类型,所以我们可以查看的啊,怎么查看呢?查看类型print,套上括号,用type来检测这个变量是不是就可以了,那我们现在函数它不是变量,而是一个函数,那这里边函数名起到了变量的作用,也就是说你只要打印函数名就可以看到函数对应的类型了,来右键运行一遍,大家会发现,哎呀,函数真的是一个class,是不是一个类型啊,所以函数。
15:32
是一种数据类型,我们不当可以打印类型,打印函数也可以啊,其实函数本身是个值,函数也是一种数据类型啊,你可以打印MY,但是你看到的这个是函数的结构啊,函数的一个信息function啊,MY在内存的哪个地址,仅此而已,它不可能给你打印出更详细的信息啊,所以大家了解一下函数实际上是什么呀?是变量的一种,也就是说本质上函数名就是变量名嘛,函数函数的定义相当于什么呢?变量赋值其中。
16:07
函数名就是变量名,函数名就是变量名,就这么简单,有了这个作为基础之后,我们反过来看函数的命名规范,是不是大家要知道了函数名的定义的话,第一条是什么东西呢?相对变量叫可以使用,应该不是可以叫推荐使用英文啊,不可以。叫可以使用拼音,可以使用拼音啊,不可以使用汉字。不可以使用汉字。对不对啊,第二条可以使用数字啊数字,但是不能以数字开头。以数字开头,这是不是都是变量里边的,对不对?第三个不可以使用特殊字符。除了下划线啊,诶是不是还是一样,第四条叫变量不是函数名严格区分大小写啊,函数名严格区分大小写,就是大写的和小写的是不一样的两个函数啊,其实也就是不一样的变量呗,是不是第五个函数名声明要有意义啊,函数命名。
17:21
要有意义。哎,是不是还这样,然后第六个,第六个依然是什么呢?函数名。函数的名称啊,不能和谁冲突啊,函数名不能和系统保留关键字冲突,这都是和变量一模一样的,在讲函数的时候,只有一点是多的啊,多的什么呢?叫做函数名。函数名究不要和系统已存在函数同名啊,叫究。写错了,尽量不要和系统已存在的内件函,不是内件啊,内界函数。
18:07
内建函数内建。函数同名一。以免覆盖那些函数啊。以免覆盖。内建函数。就这么简单,也就是说它就多了一条,实际上啊多了一条。好多说啥叫内接函数啊,简单的说,我们Python实际上是自带的一些函数,那么我如果想使使用系统函数的时候呢,系统函数已经帮我们命名好了,你不能起名跟它冲突啊,你不能起,不能跟只能跟冲突,很多学们说,那我哪知道系统哪些内接函数呢?这个我们可以从手册里查得到啊,首先打开我们的开始菜单,找到我们的PS3点七的文件夹啊,PS3点七的文件夹是不是在这啊,点开这个我们这里有一个手册,看到没有PS3点七的手册啊,点开手册之后,大家可以在这里面看啊,当然手册只纯英文的,没有中文啊。
19:06
好,看什么呢?点开我们的Python标准库,看到没有?Python标准库点开这个啊Python标准库,点开Python标准库,这里边有一个beauty function,看到没有,就是内建函数,点一下你就会发现哇,这里边有个框框,看到没有?这个框框就是我们pon自带的内建函数,这就表明我们什么啊,自己写的函数名究量不要和这些名一样,否则的话你会把这些已经存在的函数给覆盖掉。很多学说为什么能够覆盖掉呢?很简单,因为函数本身的本质是变量嘛,变量可以重新赋值吗?是不是?所以千万要注意不能和这些已经存在的同名,很多学说那我就记不住这些怎么办呢?你不用担心啊,这些东西我们会在学习过程当中绝大部分都要接触到啊,绝大部分都要接触到,而且其实我们很早很早就接触到函数了,比如说ID还记得吗?检测一个变量的,或叫一个数据的数据标识函数,比如说我们的什么呢?我们的这个。
20:07
叫做print,在哪呢?Print print p,打印一个数据的函数是不是它都是特定功能啊,包括set转换为将其他数据类数转换为集合的函数,包括int int呢?Int将其他数据类数转为整数的函数是不是?所以我们之前讲到的那些带有括号的东西,我们之前称它为功能,真正学到了函数之后,我们应该统称它为函数。所以知识这个东西啊,就是随着更新你会发现前面的有些概念会变得更加什么呀,更加具体,更加形象啊。我们函数其实学了很多了,学了很多了,只不过之前因为没讲到函数,所以不敢给大家提这个概念,现在大家来看一下,我们至少得学了十多个函数了吧,数据类型转换得有九个吧,是不是再加上什么打印啊,ID呀,什么类型检测呀,是不是等等等等,你少数也说十多的函数了啊,好,这个时候大家做函数你就不再陌生了吧啊,所以第七条记住啊,千万不要跟他重名,免得覆盖了,你假如说定义这个函数叫print,你就打印不了。
21:07
啊,你就打印不了以后print打印不了数据了,所以这个千万要注意好了,那关于函数的定义解,基本定义介绍完了之后呢,我们来接着深入了解函数,接着来试着了解函数,问题在哪呢?你看啊,我们之前讲啊,你之前第一个行星要十行十列的,也要五行五列的,也要三行三列,也要两行两列的,对不对,或三行七列,五行八列都可以,那我们之前这个功能明显是什么呀?太固定化了,只能这个心星只是不是只能十行十列了,对不对啊,我们这个是不是只能输出一句话是不是,那如果我想让你的变它,让它变得更加灵活怎么办呢?为了让我们的函数变得更加灵活可用,我们在函数中引入了一个新的内容,什么内容呢?后来有一个新的内容叫做参数,叫做参数。
22:00
参数啊参数,很多学生说啥叫参数啊,来给大家记一下参数的定义其实并不难啊,参数的定义其实并不难,参数的定义并不难,那大家买电脑都会有什么样配置对不对?那这里电脑的配置,比如说我要CPUI3I5还I7的,我要显卡是1080的,1070还是1060的,对,我要显示器是要60赫兹的还是122赫兹的是不是?那你要的不同的配置就是参数。是不是我要买一个什么呀?鸡蛋灌饼,我要灌俩蛋的是灌仨蛋的,我要加辣椒是不加辣椒的,那这些配置也就是参数,所以什么是参数呢?用于调整啊,叫做用于调整属性的什么呀?值就是参数是不是?嗯,就这东西,那我们为了让函数更加灵活,给它加入了参数,那你就可以选择什么呀?带辣椒的煎饼,不带辣椒的煎饼等等等等,这样的一个功能,让我们的函数变得更加灵活,而不至于那么呆板啊。那函数既然涉及到了参数,就要把函数的结构稍微变化一下,带有参数的函数结构啊,带有参数的函数结构发生了小小的变化,首先定义F不变啊,函数名呢也不变,括号呢,这块也没变啊,冒号也没变,函数中的内容还是原来的内容啊,实现函数的代码就可以了,那好的说到底。
23:28
变在哪了呢?为了让函数更加灵活,它在这里边加入了参数啊,在这里边加入了参数。参数逗号参数逗号参数可以写很多很多的参数,参数直接使用逗号分割就可以,并没有实际的上限好不好?这就是我们带有参数的结构啊,带把这个结构再加一个符号吧,让大家看着更加舒服一点啊,这就是我们带有参数的一个结构的情况,那有了这个结构情况,我们可以来改变一下我们的函数,让函数变得灵活一些,好吧,好,那我们返回零二文件,把这个带有参数的函数写一下,带有参数的函数写一下啊。
24:13
首先我们来想一下我们要做什么事情,比如说我们要输出什么东西呢?一定范围内的数值行不行啊,一定非常简单的一个循环嘛,是不是DF。啊,DF我们打印number是不是或者叫做print打印number,打印一个数字,然后打印什么数字呢?好,我们从零开始打印,所以VR等于零,然后呢,V我们的VR小于十的情况下,我们就可以打印这个VR变量了。同时别忘了在最后加上一个VR加等于一的自动操作,那么这个时候定义完了函数,函数功能非常确定,输出解是不是零到十之间的数字啊,是不是啊,目前来说是输出。
25:02
输出啊,是输出零到十啊,零到十之间的数字,大家注意是包含零啊,包含零,但是不包含十。函式,如果你想波函式也没关系吧,那就是写个小A等于十是不是就可以了?好,这样写吧,好,有没有问题呢?没有问题,只需要调入函数就可以print的T括写上我们的什么呢?写上我们的函数名叫print number,呃,写错了,写什么这个玩意调用函数直接写它的函数名print number t括号就可以了啊。第二,这个函数让它执行右变,运行一遍你会发现程序输出了零到十,对不对,完全没有问题,但是呢,我们希望它能够变,我想输出零到十就零到十,我想输出零到100就输出零到100,我想输出零到五就零到五,那怎么办呢?大家其实也知道,我如果改变这里边什么呀?Well的判断条件,也就是这个值就可以来控制它输出的个数,比如说我现在写一个五,那是不是只能输出五份零到五,是不是是不是零到五,那这个时候干什么事呢?我们把这个。
26:05
提到前面设置为一个变量啊,写错了,提到前面把这个剪切下来,我们设一个变量叫做max number最大值行不行,那在这里边啊。Max number等于十,如果max number等于十的话,那么循环输出的结果就是十个,是不是零到十,如果我们这里边max number等于什么呢?等于八,那么输出结果就是零到八,看到没有是不是零到八,有人说,哦,原来只要改变这个max number就可以改变整个函数的意义和功能了,对不对?但是大家也发现问题,你把这里边写死了,如果我把这个max number放在这里边的话,实际上这个没法改的,没法改的,你在调用的时候没法改,对不对?定义的时候虽然可以改,但你不能说用一次改一次啊,但是你这样你会影响前面已经调用的函数对不对?所以我们想另外一招,把这个变量max number刚刚提到了这里边来,Max number往这放,往这放了之后会出现一个问题,什么问题呢?在这里边它并没有给值。
27:06
没有给值有什么下场呢?右键运行程序,你会发现程序报错,看见没有,他说了put number缺少一个参数给什么呀?Max number,这就意味着在我这里写了max number之后,但是由于没有给值,所以这里边判断其实运行不下去的。为了解决这个问题,我们可以这么做,看好了,我们要输出几个数字,比如说输,我还要输出零到十的行不行?输出输出零到十的数字,那这个时候怎么办呢?调用函数print number。同时干什么事呢?它是不是没有值啊,我再给你写一个值,我写个十,那么这个时候十就会复制给max number,再用max number带到函数当中来运行预算结果依然输出零到十,看见了吗?如果说我想改,我不想输出零到十了,我想输出零到五,函数本身不需要做任何的改变,只需要在这里边调用的时候改一下就可以了。输出零到五的数字,我们只是在里边调用print number的时候传一个五进去,那么五会把这个值自动传给max number max number再再到函数中运行,那输出的结果就是零到五,看到没有,是不是零到五?这样来的话,大家发现,诶,只要我通过改变调用函数位置的值,就可以让原有函数的功能在同等架构之下发生变化,对不对,这就是它灵活性的所在,这就是它灵活性的所在。
28:35
当然,为了区分我们传入的值和这个max number,也就是说设定的这个变量值,我们在这里边儿有两个新的概念,什么概念呢?行参和实参啊。行参和食参的概念啊,和食餐的概念好多,啥叫行参呢?简单的说一句,在。定义函数的函数,定义函数的括号中声明的变量啊。
29:05
变量名,变量名就是什么呢?形参,实际上它是什么呀?形式上的参数,所以叫形参,为什么我们说是形式上的参数,很简单啊,它只是一个名称,并没有值对不对,所以只是一个代表一个位置啊,代表一个形式,然后呢,什么叫实参呢?它是在调用函数的括号中啊,函数的括号中。然后传的括号中传入的值就是。实参,所谓的实参就是实际上的参数,真实的值嘛,实际上参数,而且这里边还要注意一件事情啊,对于初学者要非常注意什么事情呢?食参将直。是他不是有数据吗?是不是将它的值。传递给行参的过程。
30:01
然后很多这怎么传递的,看不出来呀,很简单,本质上就是变量赋值。本质上就是变量赋值操作,也就是说哦,原来我把五给max number,就相当于max number等于五,这个操作是一样的啊,这个是大家千万要注意的一个内容啊。呃,其实这个东西在现实中很常见嘛,我想喝水了,你可以扔一瓶水给我,一种方式对不对?你也可以递一瓶水给我,是不是也是一种方式是不是?所以你甚至可以找人拖一瓶拖,找人什么呀,帮帮你把水送给我,是不是也是一种方式啊,就是同样我得到了一瓶水,但是过程方式和形式是不一样,方式形式不一样的结果是一样的,那变量复制和实参传递给行参就是这个意思啊,就是虽然形式不一样,但是它的本质上是一样的。这样的话,关于参数的概念,我相信大家应该能了解了吧。好了,有了行参和实参的概念,我们下面就要深入来了解一下关于函数的参数了,很多说这还不是所有吗?不是,目前的参数只是简单的结构,我们的参数会有更加复杂的内容,我们会在下一小节当中为大家讲解,好不好?感谢大家收听本小节内容,我们下一小节继续来讲解函数的参数。
我来说两句