在使用函数之前必须先定义函数,定义函数的语法格式如下:
def 函数名(形参列表):
//由零条到多条可执行语句组成的函数
[return [返回值]]
Python声明函数必须使用def关键字,对函数语法格式的详细说明如下。
1)函数名:从语法角度来看,函数名只要是一个合法的标识符即可;从程序的可读性角度来看,函数名应该由一个或多个有意义的单词连缀而成,每个单词的字母全部小写,单词与单词之间使用下画线分隔。
2)形参列表:用于定义该函数可以接收的参数。形参列表由多个形参名组成,多个形参名之间以英文逗号(,)隔开。一旦在定义函数时指定了形参列表,调用该函数时就必须传入对应的参数值,谁调用函数,谁负责为形参赋值。
在函数体中多条可执行语句之间有严格的执行顺序,排在函数体前面的语句总是先执行,排在函数体后面的语句总是后执行。
下面程序定义了两个函数,并在程序中调用它们。
# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2024/01
# @Author : Laopi
#定义一个函数,声明两个形参
def my_sum(x,y):
#定义一个变量z接收x和y的和
z = x+y
#返回变量z的值
return z
#定义一个函数,声明一个形参
def say_hello(name):
print('====正在执行say_hello()函数====')
return 'hello,'+name
a = 7
b = 8
#调用my_sum()函数,将函数返回值赋值给result变量
result = my_sum(a,b) #①
print("result:",result)
#调用say_hello()函数,直接输出函数的返回值
print(say_hello("测试划水老师傅"))#②
上面程序中定义了两个函数:my_sum()与say_hello(),并在程序①号、②号代码处分别调用了my_sum()和say_hello()这两个函数。从下面的运行结果可以看出,当程序调用一个函数时,既可以把调用函数的返回值赋值给指定变量,也可以将函数的返回值传给另一个函数,作为另一个函数的参数。
运行上面的程序,可以看到下面的运行结果:
在函数体中使用return语句可以显式地返回一个值,return 语句返回的值既可是有值的变量也可是一个表达式。
def my_sum(x,y):
#返回表达式
return x+y