Python 中的函数定义和调用

201 阅读2分钟

在Python中,定义一个函数通常需要使用def关键字,后面跟着函数名和括号,括号内可以包含参数。函数体用冒号:开始,并且缩进。下面是一个简单的Python函数定义的例子:

def greet(name):  
    print("你好, " + name + "!")  

在这个例子中,greet是一个函数名,而name是函数的一个参数。函数体包括一个print语句,用于向调用者问候。
调用这个函数,你可以把参数传递给函数,用圆括号()包围函数名,并在括号内提供相应的值,如下所示:

greet("张三")  

当调用greet("张三")时,程序会输出:

你好, 张三!  

你可以不带任何参数调用一个函数,如果函数定义时没有参数,调用时也无需使用括号:

greet()  

如果函数有多个参数,可以像下面这样调用:

def add(a, b):  
    return a + b  
result = add(5, 10)  
print(result)  # 输出 15  

Python还允许使用默认参数、可变参数列表以及关键字参数,使函数定义和调用更加灵活。

  • 默认参数:在定义函数时为参数指定一个默认值,如果调用时没有提供该参数的值,将使用这个默认值。
  • 可变参数列表:使用*操作符,可以让函数接受任意数量的位置参数,这些参数会打包成一个元组。
  • 关键字参数:使用**操作符,可以让函数接受任意数量的关键字参数,这些参数会被打包成一个字典。
    使用这些高级特性,函数可以更加通用和灵活,以下是相应的例子:
# 默认参数  
def greet_with_default(name, greeting="你好"):  
    print(greeting + ", " + name + "!")  
greet_with_default("李四")  # 输出 "你好, 李四!"  
greet_with_default("王五", "您好")  # 输出 "您好, 王五!"  
# 可变参数列表  
def sum_all(*args):  
    return sum(args)  
print(sum_all(1, 2, 3, 4))  # 输出 10  
# 关键字参数  
def describe_pet(animal_type, pet_name="小猫"):  
    print("我有一只" + animal_type + ",名字叫" + pet_name + "。")  
describe_pet("狗狗", pet_name="旺财")  # 输出 "我有一只狗狗,名字叫旺财。"  
describe_pet(pet_name="喵喵")  # 输出 "我有一只宠物,名字叫喵喵。"  

以上就是在Python中定义和调用函数的基础知识。