Python基础篇-010. 函数(二)

[toc]

一、创作声明

本Python系列课程,是一门初级课程。目标是想让大家能在Python方面,实现从零基础到入门。这个课程的特殊性在于,这将是一门由我来主导教学思路,由ChatGPT来主导教学内容的课程。我认为这将会是一种非常有意思的尝试。

二、前言

本章学习目标:

  1. 了解关键字参数,并学会使用

  2. 了解参数默认值,并学会使用

  3. 了解函数定义顺序

  4. 了解内部函数

三、函数参数

1、关键字参数

在Python中,可以使用函数来指定参数。函数的参数可以分为两种类型:位置参数和关键字参数。

位置参数是按照参数的顺序进行传递的,调用函数时需要按照定义时的顺序传入参数。例如:

def greet(name, age):
    print(f"Hello {name}, you are {age} years old.")

greet("Alice", 25)

在上面的例子中,函数greet有两个位置参数nameage,在调用函数时,按照顺序传入参数"Alice"25

关键字参数是通过指定参数名来传递的,可以不按照定义时的顺序传入参数。例如:

def greet(name, age):
    print(f"Hello {name}, you are {age} years old.")

greet(age=25, name="Alice")

在上面的例子中,函数greet的参数nameage都是关键字参数,可以通过参数名来传递参数。

2、参数默认值

除了位置参数和关键字参数,还可以使用默认参数来指定函数的参数默认值。例如:

def greet(name, age=18):
    print(f"Hello {name}, you are {age} years old.")

greet("Alice")  # 使用默认值18
greet("Bob", 20)  # 传入新的值20

在上面的例子中,函数greet的参数age有一个默认值18,如果调用函数时没有传入该参数,将使用默认值。

四、函数定义顺序

Python函数必须在调用之前定义。这是因为Python是一种解释型语言,它按照从上到下的顺序逐行执行代码。如果在调用函数之前没有定义函数,解释器将无法找到函数的定义并执行相应的操作。

以下是一个示例:

# 定义函数
def greet():
    print("Hello, world!")

# 调用函数
greet()

在这个例子中,我们首先定义了一个名为"greet"的函数,它打印出"Hello, world!"。然后,我们在代码的后面调用了这个函数。如果我们将函数的定义放在调用之后,解释器将无法找到函数的定义并报错。

五、内部函数

Python内部函数是指在其他函数内部定义的函数。这些函数只能在其所属的外部函数内部调用,无法在外部函数之外被访问。内部函数通常用于封装和隐藏代码逻辑,提高代码的可读性和可维护性。

以下是一个示例,展示了如何在Python中定义和使用内部函数:

def outer_function():
    def inner_function():
        print("This is an inner function.")
    
    print("This is the outer function.")
    inner_function()

# 调用外部函数
outer_function()

输出结果为:

This is the outer function.
This is an inner function.

在上述示例中,inner_functionouter_function的内部函数。当调用outer_function时,内部函数inner_function也会被调用。注意,内部函数只能在外部函数内部被调用,无法在外部函数之外直接调用。

Python内部函数的使用可以帮助我们组织和管理代码,提高代码的可读性和可维护性。

六、写在最后

更多技术分享,点击传送门:https://github.com/maxiaolu66/profile

Last updated