Python基础Day06

函数

# 全局变量和局部变量
a=3  #全局变量

def test01():
    b=4
    print(b*10)

    global a
    #global 关键字声明,在函数内增加全局变量,全局变量也会改变
    a=300
    print(a)

test01()
print(a)
print(locals()) #查看局部变量

print(globals()) #查看全局变量
# 参数传递,从实参到形参
# 测试参数类型、位置参数、默认值参数、命名参数

def test01(a,b,c,d):
    print("{0}-{1}-{2}-{3}".format(a,b,c,d))

def test02(a,b,c=10,d=19):      #默认值参数必须位于后面
    print("{0}-{1}-{2}-{3}".format(a, b, c, d))

def test03(d=20,c=30,a=10,b=35):
    print("{0}-{1}-{2}-{3}".format(a, b, c, d))




# lambda表达式和匿名函数
g=[lambda a:a*2,lambda b:b*3,lambda c:c*4]
print(g[0](6))

f=lambda a,b,c,d: a*b*c*d

h=[test01,test02]
print(h[0](1,2,3,4))
# 测试eval函数
s="print('abcde')"
eval(s)


a=10
b=15
c=eval("a+b")
print(c)

dict01=dict(a=100,b=200)

d=eval('a+b',dict01)#不写dict01,a=10,b=20
print(d)
# 测试递归函数

def test01(n):
    print('test01:',n)
    if n==0:
        print('over')
    else:
        test01(n-1)

    print('test01***',n)
test01(4)

# 使用递归函数计算阶乘

def factorial(n):
    if n==1:
        return 1
    else:
        return n*factorial(n-1)

print(factorial(5))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值