Python中的函数代码组织和复用的核心工具,函数用于封装可重复使用的代码块。
什么是函数?函数是一组可重复使用的代码,用于执行特定的任务。通过函数,可以将复杂的程序分解成更小的、更易管理的部分。
定义函数使用def关键字定义函数,后跟函数名和参数列表。
语法:
def function_name(parameters): """函数文档字符串""" # 函数体 return value示例:
def greet(name): """向指定的人打招呼""" return f"Hello, {name}!"调用函数定义函数后,可以通过函数名和相应的参数来调用它。
message = greet("Alice")print(message)输出:Hello, Alice!
函数参数类型位置参数(Positional Arguments)
按照位置顺序传递给函数的参数。
def add(a, b): return a + bresult = add(3, 5)print(result) # 输出: 8关键字参数(Keyword Arguments)
通过参数名传递参数,顺序不重要。
def introduce(name, age): return f"{name} is {age} years old."print(introduce(age=25, name="Bob")) # 输出: Bob is 25 years old.默认参数(Default Arguments)
为参数设置默认值,如果调用时未提供该参数,则使用默认值。
def greet(name, message="Hello"): return f"{message}, {name}!"print(greet("Charlie")) # 输出: Hello, Charlie!print(greet("Charlie", "Hi")) # 输出: Hi, Charlie!可变参数(Variable-Length Arguments)
*args:接收任意数量的位置参数。**kwargs:接收任意数量的关键字参数。def func(*args, **kwargs): print("位置参数:", args) print("关键字参数:", kwargs)func(1, 2, 3, a=4, b=5)输出:
位置参数: (1, 2, 3)关键字参数: {'a': 4, 'b': 5}函数返回值函数可以使用return语句返回值。如果没有return语句,函数默认返回None。
def square(x): return x * xprint(square(4)) # 输出: 16匿名函数(Lambda Functions)匿名函数使用lambda关键字定义,通常用于需要短小函数的场合。
语法:
lambda arguments: expressionadd = lambda a, b: a + bprint(add(3, 5)) # 输出: 8
Python语言函数解析