我的python菜鸟之路7,,----------


------------------------------函数相关---------------------------

return

默认返回值为None

返回函数的值

终止代码的执行

可以返回任意类型

当函数有返回值时,调用函数时必须有一个新的变量来接受,这时才返回return的值

def fun():    return 5, 8 ,‘yang‘a=fun()print(a)#不加括号时,默认返回元组

函数有几个形参就应该有几个实参,不然无法运行

#练习1def func(name,age):    a = 123    b =456    d =789    print(a)    return (111)a = func(1,2)#返回值为123#练习2def func(name,age):    a = 123    b =456    d =789    print(a)    return (111)a = func(1,2)print(a)#返回值为123 \n 111
在进行强制转换的时候(列表、元组、集合),如list();其相当于先对其中的元素进行循环,再逐次进行添加,int类型不可进行强制转换,因为其为不可迭代对象
a = ‘hsdhj‘b = (1,2,3)c ={‘name‘:‘yang‘,‘age‘:‘18‘}print(list(a),list(b),list(c))#其结果为:[‘h‘, ‘s‘, ‘d‘, ‘h‘, ‘j‘] [1, 2, 3] [‘name‘, ‘age‘]
三元运算与函数的 return相结合
def fun(a,b):    return a if a > b else bv = fun(1,2)prin(v)

函数参数

位置传参

关键字传参:位置可变

关键字传参和位置传参可以混合使用(位置参数应放在前面,关键字参数放在后面,合起来等于总参数的个数),比如:打开文件时

默认参数:可传可不传,传了就覆盖,不传时就是默认值

*args 万能参数(打散)

可以接受任意个参数,并将参数转化为元组不支持关键字传参可以与位置传参混用与关键字传参时,关键字传参必须在后面
def fun(*args):#形参之前加*,可以传入多个参数,即不限制    print(args)b = fun(*[1,2,3,4,5],)#前面不加*即当做一个元组,加了*即将其打散放入

**kwwargs

只能用关键字传参

可接受任意个参数,并将参数转化为字典

单个*例子

ef fun(**kwargs):    print(kwargs)b = fun(k1 = 1,yangf=‘zi‘)

两个**例子:整体把字典复制过去

def fun(**kwargs):    print(kwargs)b = fun(**{‘ke‘:‘yam‘,‘li‘:‘yang‘})

两个参数混用

def fun(*args,**kwargs):    print(args,kwargs)b = fun(*[1,2,3,4],k1=‘yang‘,v2=‘li‘)

我的python菜鸟之路7

评论关闭