Python 函数的基本语法和使用方法
Python 是一门简单易学的编程语言,它的语法简洁明了,因此受到了广泛的应用。Python 内置了许多函数,同时也支持自定义函数。本文将详细介绍 Python 函数的基本语法和使用方法。
1. 函数定义
Python 中定义函数的语法如下:
def function_name(parameters): "函数文档字符串" function_suite return [expression]
其中,def 是 Python 中的关键字,用于定义函数。函数名必须以字母或下划线开头,后面可以跟字母、数字或下划线。参数是可选的,多个参数用逗号隔开。函数的主体部分是由一个或多个 Python 语句组成的代码块,它们被称为函数体。函数体中的代码通过缩进来标识出来。
2. 函数调用
使用 Python 定义好的函数时,需要进行函数调用。函数调用的语法如下:
function_name(arguments)
其中,function_name 是函数的名称,arguments 是传递给函数的参数。需要注意的是,如果没有传递参数,则括号中应该为空。
3. 函数参数
Python 函数定义时,可以指定参数。参数是函数传递数据的一种方式。函数参数分为以下几种类型:
(1)位置参数:按照参数的位置进行传递。如:
def add(a, b): return a + b result = add(1, 2) # 3
(2)关键字参数:通过参数名进行传递。如:
def add(a, b): return a + b result = add(b=2, a=1) # 3
(3)缺省参数:在函数定义时,可以给某些参数指定默认值。如:
def add(a, b=2): return a + b result1 = add(1) # 3 result2 = add(1, 3) # 4
(4)可变参数:不定长参数,函数调用时可传入任意个参数。如:
def add(*args):
result = 0
for arg in args:
result += arg
return result
result1 = add(1, 2, 3) # 6
result2 = add(1, 2, 3, 4) # 10
(5)关键字可变参数:与可变参数类似,但允许传递参数的名称和值。如:
def func(**kwargs):
for key, value in kwargs.items():
print(key, value)
func(name='Tom', age=26) # name Tom
age 26
其中,args 和 kwargs 只是约定俗成的名称,可以使用其他名称。
4. 函数返回值
Python 函数可以返回一个值或多个值。如果函数没有返回值,则返回 None。
(1)返回单个值:可以使用 return 语句来返回一个值。如:
def square(num): return num*num result = square(2) # 4
(2)返回多个值:使用元组(tuple)来返回多个值。如:
def rect_area(width, height): area = width*height perimeter = 2*(width+height) return area, perimeter result = rect_area(2, 3) # (6, 10)
在此示例中,返回的结果是一个元组,元组中包含了两个数值。
5. 匿名函数
Python 的 lambda 函数又称为匿名函数,它是一个没有名称的函数。lambda 函数通常用于简单的函数,并且只使用一次,因为它们不需要定义函数名称、使用 def 关键字和 return 语句等。
(1)一般 lambda 函数语法:
lambda argument_list: expression
其中,argument_list 是该匿名函数的参数列表,expression 是进行运算的表达式。如:
power = lambda x: x**2 result = power(2) # 4
(2)lambda 函数作为其他函数的参数:
def square(x): return x**2 result = map(lambda x: square(x), [1, 2, 3, 4, 5]) # [1, 4, 9, 16, 25]
在此示例中,lambda 函数用作了 map() 函数的参数。
6. 函数作用域
Python 的函数分为局部函数和全局函数。全局函数定义在程序的外部,可以在整个程序中使用。而局部函数定义在函数内部,只能在函数内部使用。在 Python 中,函数作用域是通过变量作用域链实现的。
(1)全局变量:在函数外部定义,可以在整个程序中使用。如:
num = 100 def print_num(): print(num) print_num() # 100
(2)局部变量:在函数内部定义,只能在函数内部使用。如:
def print_num(): num = 200 print(num) print_num() # 200
需要注意的是,在函数内部如果要修改全局变量,则需要在函数中先使用 global 关键字声明变量。如:
num = 100 def set_num(value): global num num = value set_num(200) print(num) # 200
7. 小结
Python 是一门简单易学的编程语言,函数是其重要组成部分之一。本文从函数定义、函数调用、函数参数、函数返回值、匿名函数和函数作用域等方面详细介绍了 Python 函数的基本语法和使用方法。最后小编提示大家,在实际编程中,需要根据具体情况灵活运用 Python 函数。
