目录
1、学习交流
2、内容介绍
3、理论与实操
作者:
编辑:
版本:
林义孟
刘梦婷
python3
对于新手而言,做了这么多每日一练,看了这么多历史文章中高大上的爬虫、深度学习等,怎么感觉对python仍旧没有底气呢,我掐指一算,套路缺你,亦或你缺套路,套路是什么,就是我们接下来的《Python自定义函数》教程。
对于不太新也不太老的python学习者而言,很多小伙伴应该和我一样,在自定义函数的实践方面,自己定义了成千上百了吧,这个就算没有专门学习也快要无师自通了,但是还是建议查漏补缺,比如在参数的设置方面,比如,默认参数、不定长参数,比如global调用全局变量等知识性问题。
对于老手便可选择看一下面的内容介绍,进行性阅读啦,老铁!
学习交流
关于函数的学习,之前和新入手的小伙伴交流过,他带着哭腔说Python这么多函数怎么记住呢(此处给他一个抱抱)。其实呢,Python一些特定的函数,使用频率也许不高,你可以不清清楚楚地记得拼写规则,但是你要知道这个功能python有、在哪个模块下面,在用的时候能够快速的描述需求,进而找到所需。
内容介绍
Python自定义函数学习内容:
查漏补缺系统学习一下Python自定义函数,本知识点分为两个部分:
函数部分,包含1.定义一个函数语法及简单规则;2.通俗实例;3.函数调用。
参数部分,包含1. 四种参数类型介绍;2.全局变量和局部变量;3. global 和 nonlocal关键字。
本次进行参数的第一部分,四种参数类型介绍。
理论与实操
(一)四种参数
必需参数;关键字参数;默认参数;不定长参数
1.必需参数
必需参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。
defSum(a,b):
c =a+b
d =a-b
returnc,d
result2=Sum(1,2)
2.关键字参数
函数调用使用关键字参数来确定传入的参数值。使用关键字参数允许函数调用时参数的顺序与声明时不一致。
defprintNA ( name, age ):
print ("名字: ", name)
print ("年龄: ", age)
return
#调用printNA函数
printNA( age=16, name="TOM ")
以上输出结果:
名字: TOM
年龄: 16
3.默认参数
调用函数时,如果没有传递参数,则会使用默认参数。以下实例中如果没有传入 age 参数,则使用默认值:
defprintNA(name, age=16):
"打印任何传入的字符串"
print("名字: ", name)
print("年龄: ", age)
return
# 调用printNA函数
printNA(age=18, name="runoob")
print("------------------------")
printNA(name="TOM")
运行结果为:
名字: runoob
年龄: 18
------------------------
名字: TOM
年龄: 16
4.不定长参数
先不说理论,直接上例子,比较靠谱啦:
defprintL(arg, *vartuple):
"打印任何传入的参数"
print("输出: ")
print(arg,end=" ")
print(vartuple)
# 调用printiL 函数
printL(70,60,50)
printL(70)
运行结果为:
输出:
70 (60, 50)
输出:
70
为什么需要不定长参数,因为我们不确定参数有固定的长度。我们学习一下语法(语法定义来自菜鸟教程):
def functionname([formal_args,] *var_args_tuple ):
function_suite
return [expression]
注意:
1.加了星号*的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。如果在函数调用时没有指定参数,它就是一个空元组,我们也可以不向函数传递未命名的变量,这句话分布别对应上面代码块的两个输出。
2.参数带两个星号**的参数会以字典的形式导入 。
下一次我们进行参数的最后探索, global 和 nonlocal关键字等。
配套教学视频
本系列练习可以配合计算机二级视频一起食用,观看地址为:
https://study.163.com/course/introduction.htm?courseId=1006044085
领取专属 10元无门槛券
私享最新 技术干货