python中def怎么用
Python中def怎么用
在Python中,def是定义函数的关键字。函数是一段可以重复使用的代码块,可以接受输入参数并返回输出结果。使用def关键字定义函数时,需要指定函数名和函数的输入参数,可以选择性地指定函数的返回值。
定义函数的语法如下:
def function_name(parameters):
"""函数文档字符串"""
function_body
return [expression]
其中,function_name是函数的名称,parameters是函数的输入参数,可以是多个,用逗号分隔。函数体function_body是一段可以重复使用的代码块,可以包含多条语句。return语句用于指定函数的返回值,可以选择性地省略。
下面是一个简单的示例,定义了一个名为add的函数,用于计算两个数的和:
def add(a, b):
"""计算两个数的和"""
return a + b
调用该函数的语法如下:
result = add(1, 2)
print(result)
输出结果为:
扩展问答
1. 如何定义不带参数的函数?
定义不带参数的函数时,可以省略parameters部分。例如:
def say_hello():
"""打印Hello World"""
print("Hello World")
2. 如何定义带默认参数的函数?
定义带默认参数的函数时,可以在parameters部分指定参数的默认值。例如:
def add(a, b=0):
"""计算两个数的和,b的默认值为0"""
return a + b
调用该函数时,可以省略b参数,此时b的值为0:
result = add(1)
print(result)# 输出1
也可以指定b的值:
result = add(1, 2)
print(result)# 输出3
3. 如何定义可变参数的函数?
定义可变参数的函数时,可以在parameters部分指定一个*args参数,表示接受任意数量的位置参数。例如:
def add(*args):
"""计算任意数量的数的和"""
result = 0
for arg in args:
result += arg
return result
调用该函数时,可以传入任意数量的参数:
result = add(1, 2, 3)
print(result)# 输出6
4. 如何定义关键字参数的函数?
定义关键字参数的函数时,可以在parameters部分指定一个**kwargs参数,表示接受任意数量的关键字参数。例如:
def print_info(name, age, **kwargs):
"""打印个人信息"""
print("Name:", name)
print("Age:", age)
for key, value in kwargs.items():
print(key.capitalize() + ":", value)
调用该函数时,可以传入任意数量的关键字参数:
print_info("Tom", 18, gender="Male", city="Beijing")
输出结果为:
Name: Tom
Age: 18
Gender: Male
City: Beijing
5. 如何定义lambda函数?
lambda函数是一种匿名函数,可以用于快速定义简单的函数。lambda函数的语法如下:
lambda arguments: expression
其中,arguments是函数的输入参数,可以是多个,用逗号分隔。expression是函数的返回值,可以是任意表达式。
例如,定义一个lambda函数,用于计算两个数的和:
add = lambda a, b: a + b
result = add(1, 2)
print(result)# 输出3