Python入门9(函数)

Python入门9(函数),第1张

Python入门9(函数) 一、函数的创建及调用

1、概述

2、具体过程

举例:

def cal(a,b):
    c=a+b
    return c

result=cal(10,20)
print(result) #30
二、函数的参数传递

1、参数传递
实参:实际传递参数
形参:函数括号内的形式参数

举例:

def cal(a,b):
    c=a+b
    return c

result=cal(10,20)#位置实参 a=10,b=20
result=cal(b=20,c=10) #关键字实参传递 a=10,b=20
print(result)

2、内存分析
概述:在函数的调用过程中,进行参数的传递
如果是不可变对象,在函数体的修改不会影响到实参的值 ;如果是可变对象,在函数体的修改会影响到实参的值

举例:

#函数的定义
def fun(arg1,arg2):
    print('arg1=',arg1)
    print('arg2=',arg2)

    arg1=100        #重新赋值为100
    arg2.append(10) #追加100
    print('arg1=', arg1)
    print('arg2=', arg2)
    print('-------------------------------')
#函数的调用
n1=11
n2=[22,33,44]
print(n1,n2)     #结果:11 [22, 33, 44]
fun(n1,n2)      #将位置传参,agr1,arg2是函数定义的形参,n1,n2是函数调用的实参,总结:形参和实参名称可以不一致
print(n1,n2)    #结果:11 [22, 33, 44, 10]
三、函数的返回值


结论:
1、如果函数没有返回值,【函数执行完毕后,不需要给调用出提供数据】return可以省略不写
2、函数的返回值如果是1个,直接返回类型
3、函数的返回值如果是多个,返回结果是元组

四、函数的参数定义

1、默认参数值

小贴士:可以修改print函数的默认行为,使用end

print('hello',end='t')
print('python')

结果:

2、个数可变的位置形参与个数可变的关键字形参

结论:
1、个数可变的位置形参只能有一个,不然程序会报错
2、个数可变的关键字形参只能有一个,不然程序会报错
3、在一个函数中既有个数可变的关键字形参,又有个数可变的位置形参,要求位置形参应在关键字形参之前。即:fun(*args1,**args2)

五、参数总结


举例1:

def fun(a,b,c):
    print('a=',a)
    print('b=',b)
    print('c=',c)

fun(10,20,30)
print("------列表调用多个参数函数---------------------------------------")
lst=[11,22,33]
fun(*lst)
print("-------字典调用多个参数函数--------------------------------------")
dic={'a':100,'b':200,'c':30}
fun(**dic)

举例2:
在函数参数使用*后,可限定关键字参数传递

六、变量作用域


举例:

def fun():
    global age
    age=100
    print(num)

num=100
fun()
print(age)

结果如下:

七、递归函数


举例:斐波那契数列

def fab(n):
    if n==1 or n==2:
        return 1
    else:
        return fab(n-1)+fab(n-2)

print(fab(6)) #8

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5701186.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存