python——函数

函数

函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
函数内容以冒号起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
定义:
def 函数名(形参):
函数体
return
调用:
函数名(实参)
##跟c和c++差不多

函数使用
1.定义函数
#def 是关键字,后面跟一空格,函数名称
#函数起名不用大驼峰,用小驼峰
#括号,冒号不可省,括号内写参数
def func(参数):
语句块
rerurn 返回值

函数调用
p = func(参数)

注意:python用冒号替代C++的大括号,因此python对缩进非常严格!!!!!

一、参数
参数

1.普通参数
没什么好说的形参和实参一一对应
2.默认参数
def 函数名(参数1,…,参数n=默认值)
当参数n没传入时,自动调用默认值

3.关键字参数
关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值,使用关键字参数允许函数调用时参数的顺序与声明时不一致
4.1.收集参数
也叫不定长参数,把没有位置,不能喝定义时的参数位置相应的参数,放在一个特定的数据结构中,可以和其他参数一起用,可以为空
定义def fanc(args)
调用fanc(p1,p2,p3,…)
4.2.收集参数之关键字收集参数
把关键字参数按字典格式存入收集参数
定义:def func( **kwargs):
调用:func(p1=v1,p2=v2…)
例子:
def stu( **kwargs):
print(“自我介绍:”)
print(type(kwargs))##type()返回对象的类型
for k,v in kwargs.items():
print(k,"
******",v)##访问字典
stu(name=“xiaoming”,age=17,work=“student”,attribute=“JK”)##滑稽
5.参数的混合使用
普通和关键字优先,定义时一般找普通参数,关键字参数,收集参数tuple,收集参数dict
6.收集参数的解包问题
把参数放在list或字典中,直接把list/dict中的值放到收集参数中
例子:
def stu(*args):
for i in args:
print(type(i))
print(i)
l=[“xiaoming”,11,18]
stu(l)#直接是l时,结果如下:
<class ‘list’>
[‘xiaoming’, 11, 18] 是list类型,结果也不是我们想要的
为stu(*l)时,如下:
<class ‘str’>
xiaoming
<class ‘int’>
11
<class ‘int’>
18
逐一打印,正确
二、返回值
用return返回内容,没有返回值会自动返回None,推荐无论有没有返回值都以return结束
三、函数文档
函数的文档作用是对当前函数提供相应的参考信息
写法:
在函数内部开始第一行使用三字符串定义符,一般有特定格式
例子:
def stu(*args):
‘’‘这是文档’’’
pass
调用:help(stu)或stu.doc
顶(9) 评论(0) 收藏 分享
2018-5-5
ykt1502806494561
收集函数
-把没有位置,不能和定义时参数位置想对应的参数,放到一个特定的数据结构中;
语法:
def func(*args)#按列表格式存入参数
func_body
调用:
func(p1,p2,p3)
#参数名习惯定为args
#把args看作一个列表
例 def stu(*args):
print(type(args))
for item in args:
print(item)
stu(“SS”,18,YY)

收集参数之关键字收集参数
-把关键字按字典的格式存入收集参数
语法:
def func(**kwargs):#按字典格式存入
for k,v in kwargs.items():
print(k,"----",v)
调用:
func(p1 = v1,p2 = v2···)

收集参数混合使用的顺序问题
-收集参数,关键字参数和普通参数可以混合使用
-使用规则就是,普通参数和关键字参数优先
-然后是收集参数tuple,收集参数dict
例 def func(name,age,hobby = “none”,args,**kwargs)
调用
func(name,age,“aa”,“bb”,hobby = “sleeping”,hobby1 = “swimming”,hobby2 = “shopping”)
#“aa”,"bb"收入列表
args中
#hobby1 = “swimming”,hobby2 = “shopping”收入字典**kwargs中

收集函数解包问题
-把参数放入list或dict中,直接把list/dict的值放到收集函数中
语法:
l = [··········]
func(l)#列表需要解包,同理字典需要**解包

函数文档
一般用‘’‘ ‘’’写文档
help(func)#查看函数文档
doc(func)#只看文档内容,更缩略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值