Python函数入门指南

发表时间: 2024-03-20 06:26

为什么选择函数

函数使代码更易于阅读,因为无需在代码库中一遍又一遍地复制相同的代码。通过接收来自其他代码块的参数,函数还减少了相关代码块的使用。

如何定义函数

'def' 关键字用于在 Python 中定义函数。然后,函数的名称写在括号和冒号之后。这样,就可以创建一个没有参数的函数。函数的代码必须在下一行缩进一个制表符或四个空格。例如:

def my_func():  print(“Hello world”)

函数必须按名称调用并给定必要的输入参数才能使用。例如:

my_func()

使用参数

在 Python 中,使用括号来定义函数的参数。可以将该参数用作函数内部的常规变量。例如:

def my_func(name):  print(“Hello”, name)my_func(“Sarper”)

在本例中,输出为 Sarper 。使用多个参数与使用单个参数相同。

def my_func(word1, word2):  print(word1, word2)my_func(“Hello”, ”World”)

此函数的输出为 Hello World

使用 *args

*args 是 Python 函数中一种特殊类型的变量,它允许将多个参数传递给函数。使用 *args ,可以将任意数量的参数传递给函数,这些参数将作为函数内部的元组收集。例如

def func(*args):  print("Type:", type(args))  for i in args:    print(i)func(1, 2, 3)# OUTPUT# Type: <class 'tuple'># 1# 2# 3

也可以使用 *args 不同的名称。

def func(*numbers):  print("Type:", type(numbers))  for i in numbers:    print(i)func(1, 2, 3)# OUTPUT# Type: <class 'tuple'># 1# 2# 3

使用 *kwargs

**kwargs 是 Python 函数中的另一个特殊变量,它允许将关键字参数传递给函数。使用 **kwargs ,可以在函数内收集任意数量的关键字参数作为字典。当需要从用户那里收集自定义或其他信息时,这可能很有用。例如:

def print_info(name, **kwargs):    print("Name:", name)    for key, value in kwargs.items():        print(key.capitalize() + ":", value)print_info("John", age=25, city="New York", job="Developer")# OUTPUT:# Name: John# Age: 25# City: New York# Job: Developer

可以通过在变量前面使用 ** 来与其他名称一起使用 **kwargs

使用全部

def example_function(name, age, *args, **kwargs):    print("Name:", name)    print("Age:", age)        for arg in args:        print("Extra argument:", arg)            for key, value in kwargs.items():        print(key.capitalize() + ":", value)example_function("John", 25, "extra_arg1", "extra_arg2", city="New York", job="Developer")
Name: JohnAge: 25Extra argument: extra_arg1Extra argument: extra_arg2City: New YorkJob: Developer