目录
目标
导入
函数
内置函数
len()函数
type()函数
自定义函数
定义函数
函数定义规则
调用函数
小结
多次调用
函数的使用原则
总结
目标
从今天开始,我们将通过6篇博文,来一起学习一下函数的相关知识。今天,我们主要从函数概念,内置函数,定义函数和调用函数四个方面来了解函数的基本知识。
导入
首先,让我们来思考一个问题:我们为什么要使用函数呢?举个生活中的栗子:一个修理工会事先准备好螺丝刀,锤子等工具。这样在修理的过程中,遇到具体工具的应用场景时,拿来就用,而无需临时制造。
函数
而在Python中,当我们要使用重复性的代码时,我们通常会把这些代码打包并封装好,并为它贴上标签。而每当我们需要使用的时候,再通过标签名找到代码并自动执行,就会方便很多。这便是函数的由来。
定义:函数是封装了某一功能的代码块,可以重复使用。
隐喻:函数就像锤子或螺丝刀等工具,当遇到具体的应用场景时,可以拿来直接使用。
内置函数
在Python中,函数可以分为内置函数和自定义函数两大类。前面,我们接触的print()和range()函数都是Python的内置函数。
定义:内置函数是Python提前定义好的函数,这些函数,我们可以提前使用。
len()函数
到目前为止,Python的内置函数有68个。这里,我们再补充讲解两个常用的内置函数。第一个,是用于返回对象的长度或元素个数的len()
函数。
如图,我们将列表传入len()
函数的括号内,将结果赋值给变量 length 并输出,结果为4。
type()函数
第二个,是查询对象的数据类型的type()
函数。如图,我们将1和"yequ"分别传入type()
函数的括号内,并依次输出。结果分别为整型和字符串。
自定义函数
在Python中,我们不仅要会使用一些常见的内置函数,而且还要会定制属于自己的函数。下面,我们通过一个案例来看看如何定义一个函数。
定义函数
假设,我们是一家商铺的老板,需要每天在屏幕上滚动文字。
文字分为两行输出:
“欢迎光临”
“商品一律九折”
此时,我们就可以定义一个“输出欢迎语”的函数,来实现上述的功能。
这几行代码,定义了一个叫做sayWelcome
的函数。这个函数的功能是,输出欢迎语内容。
# 定义一个函数 sayWelcome
def sayWelcome():
print("欢迎光临")
print("商品一律九折")
def
简单来说,关键字def
是用来告诉Python,我们要定义函数。def
在英文中是define的缩写,本意就是“定义”,它是定义函数的固定格式。
一个空格
一个空格是函数定义的标准格式。
sayWelcome
函数的名称,简称函数名。我们对函数命名,需要遵守一定的命名规则规范,我们稍后会进行讲解。
括号
一对括号,是函数定义的标准格式。括号内可以不放东西,也可以放一些东西。遵循从易到难,我们今天学习括号不放东西的函数。
冒号
一个冒号,它告诉Python接下来缩进的代码是属于这个函数的。
缩进
四个空格。和判断、循环一样,函数内部的代码也需要缩进相应的空格。
函数体
函数体是几行代码组成的代码块,用于实现函数功能。
函数定义规则
函数的命名规则和变量类似,可以简单看图了解一下。下面是一些错误示范:
以数字开头的6plus
;
出现特殊字符加号或空格的a+b
,my name
。
调用函数
一个工具,只有当我们使用它时,才能体现它的价值。函数也是这个道理,定义好的函数,只有当我们使用它时,它内部的代码块才会被执行。而在代码中使用定义好的函数,我们称为调用函数。
定义一个sayWelcome函数,实现输出欢迎语的功能。第6行代码,调用了sayWelcome函数。
# 定义一个函数 sayWelcome
def sayWelcome():
print("欢迎光临")
print("商品一律九折")
# 调用函数
sayWelcome()
sayWelcome
被调用的函数名。程序会通过函数名,来定位函数体中的代码。
括号
这里一对括号是调用符号。表示在此处执行该函数的代码,是调用函数的标准格式。
小结
多次调用
当然,对于定义好的函数,我们可以多次调用。如图,我们调用了两次setWatermark()
函数。
def setWatermark():
print("本篇博客版权由栗子编程所有")
print("转载请说明出处")
setWatermark()
setWatermark()
函数的使用原则
就像生活中,只有我们先制造了工具,工具才能使用。所以,函数的使用必须遵循先定义,后调用的原则。当我们违背这个原则时,程序会报错。