Python函数定义与使用详解:从基础到嵌套调用

半杯拿铁
半杯拿铁
发布时间:2026-10-15| 6人浏览过
原创

本文系统讲解Python中函数的定义与使用。涵盖无参与有参函数、位置与关键字参数传递、返回值处理、默认参数设置,以及函数与循环、内置函数、自定义函数和嵌套调用的结合应用。通过具体代码示例,帮助开发者掌握函数核心概念与实战技巧。

函数的定义和调用

在Python中,使用关键字def来定义函数,以此明确告知解释器这是一段函数代码。

无参函数

def s():
    print("你好呀,祝你天天开心!")
s()

输出结果如下:

你好呀,祝你天天开心!

有参函数

在调用函数时,需要将实际参数(实参)传递给形式参数(形参)。

具体示例如下:

def person(name,age,add)://函数的定义
    print("名字是%s,%s的年龄是%d,%s的家庭住址是%s"%(name,name,age,name,add))
person(input("请输入你的名字"),int(input("请输入你的年龄")),input("请输入你的家庭住址"))
#函数的调用,形参实参的个数和类型必须保持一致

运行输出:

请输入你的名字易烊千玺 请输入你的年龄22 请输入你的家庭住址湖南怀化 名字是易烊千玺,易烊千玺的年龄是22,易烊千玺的家庭住址是湖南怀化

1:通过位置传递参数:仅依据位置关系将实参与形参对应,因此位置实参的顺序至关重要。

def person(name,age):
    print("%s的年龄是%s"%(name,age))
person(12,"Jason")//12对应name,age对应jason
person("Jason",12)

输出结果:

12的年龄是Jason Jason的年龄是12

2:通过关键字传递参数:利用关键字将实参与形参关联,此时参数顺序不再重要,因为Python能识别每个实参应赋给的形参。

示例代码:

def person(name,age):
    print("%s的年龄是%s"%(name,age))
person(age=12,name="Jason")
person(name="Jason",age=12)

输出结果:

Jason的年龄是12 Jason的年龄是12

带有返回值的函数

使用return语句将函数的计算结果返回给调用者。

示例如下:

def add(number1,number2):
    return number1+number2
print(add(12,23))
a=add(19,2)
print(a)

输出结果:

35 21

将函数返回值作为实参进行调用:

def add(number1):
    return number1+10
print(add(12))
a=add(19)
print(add(a))

输出结果:

22 39

默认值:为形参设定默认值,此时调用时可省略该实参;若提供了实参,则默认值会被覆盖。

def add(number1,number2=9):
    return number1+number2
print(add(12))
a=add(19)
print(a)

输出结果:

21 28

函数与循环结合

与while循环结合

def getSum(x):
//函数体
    sum = 0
    i = 1
    while i < x:
        sum += i
        i += 1
    return sum//将sun返回给调用函数
print(getSum(10))
print(getSum(100))

输出结果:

45 4950

与for循环结合

def getSum(x):
    i=1
    add=1
    for i in range(1,x):
       add*=i
    return add
print(getSum(10))

输出结果:

362880

函数的分类

主要分为内置函数和自定义函数。

内置函数

Python预定义好的、用于实现特定功能的函数。

示例如下:

print(bool(2))//bool()函数用来查看数据的布尔值,非0返回True,0或返回False
print(abs(-10))//abs()函数用来取数据的绝对值
print(type(12))//type()函数用来查看变量的类型

输出结果:

True 10 <class 'int'>

自定义函数

通过编写函数体来实现自主设计的功能。

示例如下:

def add(number1,number2,nmuber3):
    print(number1+number2+nmuber3)//打印三数之和
    print(number1 * number2 * nmuber3)//打印三数之积
    print(number1-number2-nmuber3)//打印数之差
add(10,2,7)

输出结果:

19 140 1

函数的嵌套调用

自定义函数与三目运算符结合:

def add(x,y):
    return x+y if x>y else x-y //三目运算符:如果x>y,则返回值为x+y,否则为x-y
print(add(1,3))
print(add(19,2))

输出结果:

-2 21

自定义函数的嵌套使用:

def add(a,b,c,d):
    max1=max(a,b)
    max2=max(max1,c)
    max3=max(max2,d)
    return max3
max_s=add(23,4,15,6)
print(max_s)

输出结果:

23

函数的嵌套定义

注意函数的定义语句和调用语句缩进必须保持一致。

def f1():
    print('你好!')
    def f2():
        print('希望你每天开心')
        def f3():
            print('好好学习,天天向上!')
        f3()
    f2()
f1()

输出结果:

你好! 希望你每天开心 好好学习,天天向上!

到此这篇关于一文搞懂Python中函数的定义与使用的文章就介绍到这了,更多相关Python 函数内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。