Python基础学习day4-函数

函数的重要性无需多言,主要是回顾了函数的一些基础用法和知识点,更多的应用等着后续学习再进行分享,还是希望大佬们多多指正!

函数的创建和调用

def add(a,b):
    c = a+b
    return c
r = add(1,2) # 位置传参
print(r)

函数的参数传递

关键字传参和位置传参

def add(a,b):
    c = a+b
    return c
r = add(1,2) # 位置传参
print(r)
# 函数的参数传递
r1 = add(a=12,b=2) # 关键字传参
print(r1)
def xianshi(a,b): # 这个例子更加形象一些
    print('a={0}'.format(a))
    print('b={0}'.format(b))
xianshi(1,2)
xianshi(b=13,a=15)

在函数体中修改实参

# 如果是不可变对象,在函数体体中修改不会影响实参的值
# 如果是可变对象,在函数体中修改,影响实参的值
def fun(a,b):
    a = 100
    b.append(100)
arr1 = 10  # 这是不可变对象,所以在函数体中修改为100失败
arr2 = [1,2,3] # 这可变对象,所以修改成功
fun(arr1,arr2)
print(arr1)
print(arr2)

给形参默认值

# 只有与默认值不符时才传递实参
def fun(a,b=100):
    print(a,b)
fun(10)
fun(10,10)

个数可变的位置形参和个数可变的关键字形参

def fuc(*args): # 个数可变的位置形参,加一个*号,只能有一个
    print(args)
    print(args[0])
fuc(1,2,3) # 结果是元组
fuc(1,2)
def fuc1(**a): # 个数可变的关键字形参,加一个*号 ,只能有一个
    print(a)
fuc1(a=1,b=2) # 结果是字典
def fuc2(*a,**b): # 当即有位置形参,又有关键字形参,位置形参要在关键字形参之前
    pass

关键字传参和位置传参

#关键字传参和位置传参
def fun3(a,b,c):
    print('a=',a)
    print('b=',b)
    print('c=',c)
fun3(4,5,6)
lst=[7,8,9]
fun3(*lst)  #在函数调用是,将列表中的元素转化为位置实参
dic={'a':11,'b':22,'c':33}
fun3(**dic) # 在函数调用是,将字典中的键值都转化为关键字实参
# *后边的只能采用关键字传递
def fun4(a,b,*,c,d):
    print('a=',a)
    print('b=',b)
    print('c=',c)
    print('d=',d)
# fun4(1,2,3,4) # 出错
fun4(1,1,c=10,d=20)
fun4(a=1,b=2,c=3,d=4)

用global将局域变量,变成全局变量

def fun5():
    global name #用global将局域变量,变成全局变量
    name='lu'
    print(name)
fun5()
print(name)

函数的返回值 ,jishu代表奇数,oushu偶数

def fun(arr1): # 实现的功能奇数从列表中分别找出奇数和偶数
    jishu = []
    oushu = []
    for i in arr1:
        if i%2==0:
            jishu.append(i)
        else:
            oushu.append(i)
    return jishu,oushu
s = [1,2,3,4,5,6,7]
print(fun(s))

用递归算阶乘,斐波那契数列,这是一些基本算法,有需要再看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值