本文共 1595 字,大约阅读时间需要 5 分钟。
Python函数语法
函数定义
函数在Python中通过def 关键字定义。函数名后面跟着括号内的参数列表,参数之间用逗号分隔。函数体内可以包含任意数目的可执行语句,或者只包含 pass 语句(表示函数为空)。函数可以返回一个值,也可以返回多个值(通过返回多个表达式,结果为元组)。 函数文档注释
为了让函数更易于理解,可以在函数定义时添加文档注释。用三重单引号''' 或者 '''' 包围注释内容。 函数体内的返回语句
return 语句可以返回一个值或多个值。递归函数
递归函数就是在函数体内调用自身。递归需要注意:例如:
def fn(n): if n == 5: return fn(n + 1) elif n == 6: return fn(n - 1) else: return fn(n + 2) - 2 * fn(n + 1)
参数传递
例如:
def fn(n1, n2, n3): pass # 正确调用方式: x = fn(n1=1, n2=3, n3=6) y = fn(1, 3, 6) z = fn(n1=1, n2=3, 6) # 错误:位置参数和关键字参数混用时,关键字参数必须在位置参数之后 w = fn(1, n2=3, 6)
参数默认值
函数定义时可以为某些参数设置默认值。调用函数时可以选择传递参数值,也可以不传递,系统会使用默认值。例如:
def say_hello(name="大佬", message="欢迎来到我的博客"): print(f"{name}, 您好!") print(f"消息是:{message}") # 调用方式: say_hello() # 所有参数使用默认值 say_hello(name="大佬") # 只修改name参数 say_hello("小姐姐", "欢迎一起讨论学习") # 所有参数都传递 say_hello(message="欢迎一起学习Hadoop") # 只修改message参数 错误示例: ```python say_hello(name="哼、妖怪,", message="学习Python") say_hello("欢迎学习Python", name="妖怪") 局部函数
在函数内部可以定义局部函数。局部函数可以作为常量或变量使用,或者直接调用。函数递归
除了调用自身之外,函数还可以调用自身的不同版本。lambda 表达式
lambda 是一个简洁的表达方式,可以定义一个返回值的函数。ls = [2, 4, 6, 8] s = lambda a: a ** a print(s) # 输出:2^2=4, 4^4=256, 6^6=46656, 8^8=16777216
注意事项:
总结:
Python 的函数语法简单易学,但在实际开发中需要注意参数传递、递归的正确使用以及文档注释的规范性。通过合理使用函数、递归和 lambda,可以提升代码的可读性和效率。转载地址:http://outb.baihongyu.com/