补上:20日学习函数笔记
函数:数学函数 python函数————————函数都是为了完成特定的功能
数学函数:y=2x+1 x:自变量 y:因变量
python函数
def test():——————————————————无参数
"对此函数的功能解释"
x=1
return x#可以没有return,但是一般有
y=test()
print(y)
# def:定义函数的关键字
# test():函数名
#return:返回值
def test(x):——————————————有参数
"对此函数的功能解释"
y=2*x+1
return y#可以没有return,但是一般有
t=test(5)
print(t)
为什么要使用函数:
1.代码重复过多;
2.保持一致性;(修改函数对应调用的就同步修改)
3.可扩展性强。(修改函数对应调用的就同步修改)
函数与过程:函数有返回值return,过程没有返回值(return)。
def test1():
msg="hello word"
return msg
def test2():
msg="hello word"
def test3():
msg="hello word"
print(msg)
return 1,2,3,"b",["sada"],{"name":"test"},None
t1=test1()
t2=test2()
t3=test3()
print(t1)#结果:hello word
print(t2)#结果:None 函数里面没有返回值(return)时为None
print(t3)#结果:(1, 2, 3, 'b', ['sada'], {'name': 'test'}, None) 输出一个元组
位置参数与关键字参数差别
#位置参数,必须一一对应,缺一不可
def test(x,y,z):#x,y,z是形参,不传实参时不分配内容
print(x)
print(y)
print(z)
c=test(1,2,3)#1,2,3是实参
print(c)
#关键字参数,无须一一对应,缺一不可
def test(x,y,z):#x,y,z是形参,不传实参时不分配内容
print(x)
print(y)
print(z)
c=test(y=1,x=2,z=3)#y=1,x=2,z=3叫关键字参数
print(c)
#位置参数必须在关键字参数左边,同时位置参数一一对应
def test(x,y,z):#x,y,z是形参,不传实参时不分配内容
print(x)
print(y)
print(z)
c=test(1,2,z=3)#y=1,x=2,z=3叫关键字参数
print(c)
#参数组:**字典 *列表
def test(x,*args):#*args这个可以写,但是可以不传值,可扩展性
print(x)
print(args)#结果:(2, 3, 4, 5)一个元组
print(args[0])
c=test(1,2,3,4,5)
def test(x,*args):#*args这个可以写,但是可以不传值,可扩展性
print(x)
print(args)#结果:([2, 3, 4, 5],)一个元组
print(args[0])
c=test(1,[2,3,4,5])
def test(x,*args):#*args这个可以写,但是可以不传值,可扩展性
print(x)
print(args)#结果:([2, 3, 4, 5],)一个元组
print(args[0])
c=test(1,*[2,3,4,5])
def test(x,**args):#**args这个可以写,但是可以不传值,可扩展性
print(x)
print(args)#结果:(2, 3, 4, 5)一个元组
c=test(1,**{"name":1,"test":"test1"})
def test(x,**kwargs):#*kwargs这个可以写,但是可以不传值,可扩展性
print(x)
print(kwargs)#结果:{'y': 2, 'z': 3}字典
c=test(1,y=2,z=3)
c=test(1,y=2,z=3,z=3)#一个参数不能传2次值,会爆错
posted on 2019-09-14 12:52 坚持是多么伟大的事情 阅读(149) 评论(0) 编辑 收藏 举报