如果一个函数仅仅是定义而没有被调用的话,则函数本身是不会执行的。Python 是从上到下执行代码的,如果遇到函数定义部分就会直接跳过(忽略掉),然后只有遇到函数调用时,才会返回去执行函数定义部分。也就是说,函数定义之后只有被调用才有意义。
在 Python 中,函数调用方式有两种:① 直接调用;② 在表达式中调用。
Python 直接调用函数
在 Python 中,直接调用是常见的函数调用方式,一般用于 “没有返回值的函数”。
语法:
函数名 (实参1, 实参2, ..., 实参n)说明:
从外观上来看,函数调用与函数定义是非常相似的,大家可以对比一下。一般情况下,函数定义有多少个参数,函数调用时就有多少个参数。
示例 1:直接调用函数
# 定义函数
def get_mes():
print('Python')
# 调用函数
get_mes()运行结果如下。
Python分析:
可能小伙伴们会心存疑惑:“为什么这里的函数没有参数呢?” 其实函数不一定都要有参数的。如果函数体内不需要用到传递过来的数据,就不需要参数。有没有参数,或者有多少个参数,都是根据实际开发需求来决定的。
此外还有一点要强调,那就是 “函数的定义” 一定要放到 “函数的调用” 前面,不然就会报错,请看下面例子。
示例 2: “函数调用” 不能放到 “函数定义” 前面
# 调用函数
get_mes()
# 定义函数
def get_mes():
print('Python')运行结果如下。
(报错) NameError: name 'get_mes' is not definedPython 在表达式中调用函数
在表达式中调用,一般用于 “有返回值的函数”,函数的返回值会参与表达式的计算。
示例 3:表达式中调用函数
# 定义函数
def get_sum(a,b):
result = a + b
return result
# 调用函数
total = get_sum(10, 20) + 100
print(total)运行结果如下。
130分析:
从 total = get_sum(10, 20) + 100 这句代码可以看出,函数是在表达式中调用的。这种调用方式一般只适用于有返回值的函数,函数的返回值会作为表达式的一部分参与运算。
