欢迎访问宙启技术站
智能推送

Python 函数的基本语法和使用方法

发布时间:2023-05-26 14:01:19

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 函数。