Python基础入门 --- 5.函数

本文详细介绍了Python中的函数概念,包括基本定义、传入参数、返回值(包括None类型的处理)、说明文档以及嵌套调用。通过实例演示了如何编写和使用函数,提升代码复用性与可读性。
摘要由CSDN通过智能技术生成

Python基础入门

5.函数

定义:可重复使用,用来实现特定功能的代码段。

# 不使用内置函数len,统计字符串的长度
str = "Hello World!"
count = 0
for i in str:
    count += 1
print(f"字符串{str}的长度为{count}")

# 这时候我们可以使用函数来优化过程
def my_len(data):
    count = 0
    for i in str:
        count += 1
    print(f"字符串{str}的长度为{count}")
my_len(str)

5.1 基本定义

语法结构:

def 函数名(传入参数):

    函数体

    return 返回值

调用:函数名(参数)

def printf():
    print("Hello")

printf()

补充:函数的参数和返回值如果不需要,可以省略,但函数必须要先定义在使用!

5.2 传入参数

作用:函数在进行运算时,接受外部提供的数据。

# 定义函数
def Sub(num1, num2):
    result = num1 - num2
    print(f"{num1}-{num2}的结果是{result}")

# 调用函数
Sub(10, 5)
  • Sub函数定义中,提供的num1和num2称为形式参数,简称形参。表明函数将要使用2个参数,参数之间用逗号进行分隔。

  • Sub函数调用中,提供的5和6称为实际参数,简称实参。表明函数执行时真正使用的参数值,传入时啊,按顺序传入数据,参数之间用逗号进行分隔。

5.3 返回值

语法结构:

def 函数(参数…):

    函数体

    return 返回值

变量 = 函数(参数)

def Sub(num1, num2):
    return num1 - num2
    print("hello") # 不会执行
ret = Sub(10, 5)
print(f"Sub函数的返回值是{ret}")

总结:函数体遇到return后就结束执行了。

5.3.1 None类型

如果函数没有使用return返回数据,函数将返回一个特殊的字面量:None。

def printf():
    print("Hello")

ret = printf()
print(f"函数printf的返回值是{ret}")
print(f"函数printf的返回值类型是{type(ret)}")

在这里插入图片描述

应用:

  1. if判断,None等同于False,在函数中主动返回None,配合if做判断进行相关处理。

  2. 定义变量,变量暂时不需要有具体值是,可用None替代。

# 用于if判断
def is_adult(age):
    if age >= 18:
        return "Adult"
    return None

ret = is_adult(10)
if not ret:
    print("未成年")

# 用于定义变量
name = None
5.4 说明文档

作用:对函数进行解释说明,帮助读者更好理解函数所实现的功能。

语法结构

def func(x, y):
    """
    函数说明
    :param x:形参x的说明 
    :param y:形参y的说明
    :return: 返回值的说明
    """
    函数体
    return 返回值

总结:param解释参数,return解释返回值。

5.5 嵌套调用
def func_2():
    print("----- 2 -----")

def func_1():
    print("----- 1 -----")
    # 调用func_2函数
    func_2()
    # 调用完函数会回到该语句
    print("----- 3 -----")

# 调用func_1函数
func_1()

在这里插入图片描述
上一章:Python基础入门 — 4.循环语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值