【Python从小白到高手】---函数基础

个人主页:平行线也会相交

欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创

收录于专栏【Python小白从入门到精通】🎈

本专栏旨在分享学习Python的一点学习心得,欢迎大家在评论区讨论💌

目录

一、函数定义

在python中,函数的定义格式如下:

python 复制代码
def 函数名(参数)
	函数体
	return 返回值

函数调用:函数名(参数)

需要注意的是:如果不需要参数,也需要把括号(相当于一个空阔号)写上;如果不需要返回值的话可以省略;函数必须先定义后使用

二、函数传入参数的使用

函数传入参数的作用:在函数进行计算的时候,接收外部(在函数调用时)提供的数据。

这里我们来实现一个加法的函数,请看:

python 复制代码
#函数定义
def add(x,y):
    sum = x + y
    print(f"{x}+{y}的和为{x+y}")

#函数调用
add(10,20)

结果如下:

解释x、y称之为形参 ,而传入的5、6称为实参。

当然,有时我们不需要使用参数,有时我们会使用任意N个参数来使用,具体要根据我们的需求来决定是否要使用参数。

注意:

  • 函数定义时使用的参数称为形式参数
  • 函数调用时使用的参数称为实际参数

三、返回值的使用

返回值:返回值就是函数还给调用者的一个最终结果。

我们还是以上面的加法函数来举一个带有返回值的例子,请看:

cpp 复制代码
#函数定义
def add(x,y):
    return x + y

#函数调用
sum = add(10,20)
print(sum)

结果如下:

这里需要注意的是:函数体在遇到return后就不会再往后执行了,后面所有的代码将不再执行。

四、None类型

首先我们需要明确的是:函数本质上都有返回值。

如果我们不写return来返回一个值的话,函数则会返回None这个字面量。

None类型为<class 'NoneType'>

None表示空的,无意义的意思。

还是来进行举例来帮助大家理解,请看:

cpp 复制代码
def fun():
    print("hello world")

result = fun()
print(f"返回结果为{result}")
print(f"返回结果的类型为{type(result)}")

运行结果

None类型的使用场景

None类型的使用场景主要有三个:

1.用在函数无返回值上
2.用在if判断上

在if判断中,None相当于False一般会和if判断搭配使用
3.用在声明五内容的变量上

我们先来看用在if判断上,请看举例:

cpp 复制代码
def check_age(age):
    if age >= 18:
        return "success"
    return None

result = check_age(5)

if not result:
    print(f"result的类型为{type(result)}")
    print("还未成年,不可以进入")

运行结果如下:

None也用于无内容的变量上 :如果暂时不需要变量有具体值,可以为其赋值None,比如:name = None

五、函数的嵌套调用

函数的嵌套调用:即一个函数中又调用了另外一个函数。

举例:

cpp 复制代码
def fun_b():
    print("fun_b")
def fun_a():
    print("fun_a")
    fun_b()

fun_a()

运行结果:

相关推荐
查理零世19 分钟前
【算法】回溯算法专题③ ——排列型回溯 python
python·算法·深度优先
Ethel L24 分钟前
Python - pyautogui库 模拟鼠标和键盘执行GUI任务
python
加油,旭杏30 分钟前
【go语言】指针
开发语言·golang
不做超级小白1 小时前
JavaScript反爬技术解析与应对
开发语言·javascript·ecmascript
谢大旭1 小时前
ASP.NET Core 中使用依赖注入 (DI) 容器获取并执行自定义服务
开发语言·后端·c#·asp.net
游王子2 小时前
Python NumPy(6):修改数组形状、翻转数组、修改数组维度
开发语言·python·numpy
我命由我123452 小时前
游戏引擎 Unity - Unity 设置为简体中文、Unity 创建项目
c语言·开发语言·c++·unity·visualstudio·c#·游戏引擎
fly spider3 小时前
每日 Java 面试题分享【第 20 天】
java·开发语言·面试·io
zhyhgx3 小时前
Maven
java·开发语言·maven
枫叶落雨2223 小时前
15JavaWeb——Maven高级篇
linux·python·maven