【Python】Python之函数讲解

机器学习初学者

共 1837字,需浏览 4分钟

 ·

2021-01-16 21:06

◆ ◆ ◆  ◆ 



函数


所谓函数,就是一段可以实现某种功能的代码,基本作用有两个。

其一:当某些指令被重复书写在许多不同的地方。

如果我们能把这些重复的指令写成一个函数,需要时再调用它,这样,不仅减少编辑程序的时间,更可以使程序精简、清晰、明了。

其二:当我们在设计大型程序时。

可以把需求拆解成不同的功能模块,然后团队里每人负责一个小功能,可以缩短程序开发的时间。

当一个程序在调用函数时,Python会自动跳到被调用的函数上执行工作,执行完后,会回到原先程序执行位置,然后继续执行下一道命令。

函数的定义

def 函数名称(参数值1[,参数值2,… ]):
"""  函数注释  """
        功能代码块
        return [返回值1,返回值2,… ]

由此,我们可以总结出函数三要素:

函数名    函数体    返回值


注意事项:

1. 函数名称必须唯一,由数字、字母、下划线组成,且数字不打头,最好见名知义;

2. 参数值可有可无,根据函数设计需要进行舍留,若存在多个参数,以逗号作分隔;

3. 不论是return还是返回值(默认None),均可不写,多个返回值,以逗号作分割。





局部变量与全局变量


在设计函数时,另一个重点适当地使用变量名称。

某个变量只有在该函数内使用影响范围限定在这个函数内,

这个变量称作局部变量

如果某个变量的影响范围是在整个程序,则这个变量称作全局变量

# 全局变量可以在所有函数使用def printvar():    # 函数内部没有定义变量,执行时会打印全局变量    print("严小样儿说:",var)    var = '欢迎大家关注公众号——统计与数据分析实战!'
# 调用函数的方式:函数名+(参数值)printvar()
# result严小样儿说: 欢迎大家关注公众号——统计与数据分析实战!
# 局部变量与全局变量使用相同的名称def printvar():    # 函数内部有定义变量,执行时会打印局部变量    var = '看到这里你一定会点在看的!' print("严小样儿说:",var) var = '看到这里你一定会点在看的!'
printvar()
# result严小样儿说:看到这里你一定会点在看的!



匿名函数


所谓的匿名函数是指一个没有名称的函数。


Python是使用def定义一般函数。


匿名函数则是使用lambda来定义,有的人称之为lambda表达式,也可以将匿名函数称lambda函数。


通常会将匿名函数与Python的内置函数filter( )、map( )等共同使用。


此时匿名函数将只是这些函数的参数。


匿名函数


lambda arg1[, arg2 , … ,argn ] : expression


# 定义lambda函数,实现计算平方值square lambda x: x**2
# 输出平方值print(square(10))
# result100
# 匿名函数使用与filter():求列表中的奇数mylist = [1,2,3,4,5]result = list(filter(lambda x:(x % 2 == 1), mylist))print("奇数列表:",result)
# result奇数列表:[1,3,5]
# 匿名函数使用与map():求列表的平方值squarelist = list(map(lambda x: x**2, mylist))print("列表的平方值:",squarelist)
# result列表的平方值: [1,4,9,16,25]


怎么样,你学会了吗?!可以试着做下这两个小例子:


练习1:

使用列表生成式生成2-100的偶数列表,然后给每个偶数减1变为奇数列表。


练习2:

从上述问题答案生成的奇数列表中,找出介于40-80之间的奇数。


往期精彩回顾





本站知识星球“黄博的机器学习圈子”(92416895)

本站qq群704220115。

加入微信群请扫码:

浏览 26
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报