青少年python系列目录_老程序员115的博客-CSDN博客
经过上节课的学习,我们已将可以自己来创建一些函数,帮我们把复杂的问题简单化,可以重用代码,方便我们调用。
但我们调用这些函数,它们每次的运行效果都相同,这也太无聊了吧!是这样的吗?当然不是这样了,要知道现实世界的信息在时时刻刻发生变化,但是事物的基本规律是不会变化的,对于规律相同的事物,尽管这些事物本身名称或者性质不同,但我们都可以利用它们的运行规律来控制它们达到我们的设计目的。同理,函数也是这样,我们设计的函数具有某一特定的功能,这些功能就是“事物的规律”,我们可以用函数来帮助我们处理具有同一运行规律的事物。
如果你想让一个函数每次运行都有不同的表现,可以给它传递参数。在编程中,参数这个词是指你传递给函数的一条信息,而函数可以根据这条信息灵活反应。
现在明白了么?通过参数,我们可以为函数输入不同的指令信息,来让函数帮我们处理,但这些信息尽管名称性质不同,但从某种程度上它们都拥有相同的运行规律或者说特性,正是因为这些特性,函数才可以被我们重用。
1 形参与实参
同学们在创建自己的函数,使用参数为函数传递信息时,我们需要注意,在函数创建与函数调用时有两种不同参数,形参与实参。
形参全称是形式参数,在用def关键字定义函数时函数名后面括号里的变量称作为形式参数。形参没有实际的值,被赋值后才有意义,意味着,形参空有其名,没有其实。
实参全称为实际参数,在调用函数时提供的值或者变量称作为实际参数。
实参就是实际意义上的参数,是一个实际存在的参数,可以是字符串或是数字等。当函数被调用时,我们就可以通过实参为形参传递实际的值。
2 参数与变量
参数是变量么?
是的,你可以这么认为。但是它们之间有区别。
一般变量在定义时一定要给它赋值。但是参数这种变量在函数定义时不用给它赋值,只有在调用函数时才给它赋值。
3 多个参数
函数也可以有两个、三个,或者任意多个的参数,而不是只能有一个。
多个参数意味着函数可以设计的多功能多个性,可以处理更复杂的信息。
还记得在这期课开始的地方,我们达成了共识,如果资源可以重复使用,那该是一件多么了不起的事情。
函数的最大优点在于函数的重用性,函数就是一个可以多次被重复调用的功能程序代码模块,下面我们使用函数来写一个商品价格计算与找零系统,来把我们写的程序提供给收银员实际应用。
定义名称为trade的函数,结合while循环函数,在主程序中调用trade函数,于是我们的商品价格找零系统持续运行。
每当输入不同的商品单价、数量与收钱的数据后,trade函数程序总能快速被调用,并计算出找零的金额。
这里的return 是一个返回值语句,在这里,它把算出的找零金额返给调用函数的的地方,在下节课,我们将深度认识并学习return语句 。
4 函数参数的相关问题
同学们,函数既可以有多个参数也可以没有参数,当一个函数的参数太多时,我们会习惯把这些参数放入一个列表,然后把列表当成一个参数传入函数。
无参函数:
在函数定义阶段括号内没有参数,称为无参函数
注意:定义时无参,意味着调用时也无需传入参数
应用:
如果函数体代码逻辑不需要依赖外部传入的值,必须定义无参函数
例如
- def func():
-
- print('hello world')
-
- func()
总结
一、Python语言编写程序函数的时候具有两类参数:形参与实参
二、参数与变量有区别。变量在定义时一定要给它赋值。但是参数这种变量在函数定义时不用给它赋值,只有在调用函数时才给它赋值。
三、函数也可以有两个、三个,或者任意多个的参数,而不是只能有一个。也可以没有参数。