首页 > 编程语言 > 详细

python基础学习——函数

时间:2019-09-20 02:20:07      阅读:81      评论:0      收藏:0      [点我收藏+]

一、函数的定义

1、函数的好处

1)代码重用

2)保持一致性,易维护

3)可扩展

2、函数的结构

def  test(x):  #def为定义函数的关键字,test为函数名,x为参数(可以带参数,也可以不带参数)

      "..................."#注释:解释函数的作用,规范写法

      x=x+1#泛指代码块或者程序处理的逻辑

      return y #泛指返回值,可以不定义

     y=test(3) #运行test这个函数

print(y)

总结:

              返回值数=0,None

    返回值数=函数名,返回函数返回值

    返回值数=其他,返回其他

函数遇到return立马结束

2.1样例

1)没有return,函数返回值为None

def test01():
    msg="test1"
    print(msg)
t1=test01()
print(t1)
结果:
test1
None

2)返回值=1,则返回object

def test01():
    msg="test1"
    print(msg)
    return msg
    # return 1,2,3,"a",["nana"],{"name":"cc"}
t1=test01()
print(t1)

结果:
test1
test1

3)返回值>1,返回tuple

def test01():
    msg="test1"
    print(msg)
    return 1,2,3,"a",["nana"],{"name":"cc"}
t1=test01()
print(t1)

结果:
test1
(1, 2, 3, a, [nana], {name: cc})

二、函数的参数

1、函数的形参和实参

     形参:只在函数内部有效,函数调用结束返回,主调用函数后不再使用该形参变量,形参只有调用时才分配内存空间

     实参:包含常量、变量、表达式和函数

def cal(x,y):#x,y为形参

  res=x**y

  return res

  res=cal(2,3)#2,3为实参

  print(res)

2、位置参数与关键字

  位置参数中形参与实参必须一一对应

  关键字,位置无需固定

  关键字和位置参数混合使用时,位置参数必须在关键字的左边

2.1样例

位置参数&关键字
def test01(x,y,z):
    print(x)
    print(y)
    print(z)
test01(1,4,2) #位置参数
test01(x=3,y=4,z=8)#关键字

test01(66,88,z=109)

3、默认参数

def handle (x,type="mysql"):#type="mysql"为默认函数
    print(x)
    print(type)
handle("hello")
handle("hello","sql")
handle("hello",type="love")

4、参数组:非固定长度的参数,*列表相关,**字典相关

1)*列表相关

def handle (x,*args):#
    print(x)
    print(args)
handle(1,2,3,45,77,988)
handle(2)
handle(3,{"name":"cc","age":19})#按位置参数方式传值于形参对应的值
handle(4,*["a","xx","as"])#*转换为一个列表


结果:
1
(2, 3, 45, 77, 988)
2
()
3
({age: 19, name: cc},)
4
(a, xx, as)

2)**字典相关

def handle (x,**kargs):
    print(x)
    print(kargs)
handle(1,y=12,z=66)
#handle(2,y=77,z=88,y=99)#一个参数y不能传两个值,会报错

结果:
1
{z: 66, y: 12}

3)*列表相关,**字典相关组合

def handle (x,*args,**kargs):
    print(x)
    print(args)
    print(kargs)
    print(kargs,kargs.get("y"))
handle(1,2,33,445,566,xx=1,y=23,z=990)
handle(2,*[11,22,33],**{"y":7777})

结果:
1
(2, 33, 445, 566)
{xx: 1, z: 990, y: 23}
{xx: 1, z: 990, y: 23} 23
2
(11, 22, 33)
{y: 7777}
{y: 7777} 7777

 

python基础学习——函数

原文:https://www.cnblogs.com/xucuiqing/p/11553261.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!