Pyhton入门之面向过程编程与函数式编程

#面向过程的编程思想

#核心是’过程‘二字,过程即流程,指的是做事的步骤:先做啥,再做啥,后干啥

#优点:复杂的问题流程化,进而简单化
#缺点:扩展性差

#面向对象的思想
# res=lambda x,y:x+y
# print(res(1,2))
#def用于定义有名函数
# def func(x,y):
#     print(x,y)
# print(func)
#1、lambda用于定义匿名函数
# lambda x,y:x+y

#如何调用匿名函数

#就是内存地址()
#方式一

# res=(lambda x, y: x + y)(1,2)
# print(res)

#方式二:
# func=lambda x, y: x + y
# res=func(1,22)
# print(res)
#匿名函数用于临时调用一次的场景:更多的是将匿名与其他函数配合使用
#方式三:
# lambda x, y: x + y


# salaries={
#     'loky':3000,
#     'luce':1000,
#     'doky':10000,
#     'okey':2000
# }
#迭代出来的是key,所以比较的是key
# max(salaries)
#方式一:
# def func(k):
#     return salaries[k]
# res=max(salaries,key=func)
# print(res)
#方式二
# ---------------------max
# res=max(salaries,key=lambda k:salaries[k])
# print(res)
#---------------------min
# res=min(salaries,key=lambda k:salaries[k])
# print(res)


salaries={
    'loky':3000,
    'luce':1000,
    'doky':10000,
    'okey':2000
}
#-------------------sorted排序
# res=sorted(salaries,key=lambda k:salaries[k])
# print(res)
#-------------------map的应用
# l=['loky_lss','luce_lss','csad_lss']
# new_l=(name+'_lss' for name in l)
# print(new_l)
#
# res=map(lambda name:name+'lss',l)
# print(res)#得到一个生成器
# res.__iter__()
#
# res=res.__next__()
# print(res)

#-------------------filter

# l=['loky_lss','luce_lss','csad']
# res=[name for name in l if name.endswith('_lss')]
# print(res)

# res=filter(lambda name:name.endwith('_lss'),l)
# print(res)#生成式


#-------------------------reduce

from functools import reduce
l=[111,222,3,333]
#合并操作
res=reduce(lambda x,y:x+y,[1,21,2,1],10)#10,1
                                    #11,21
                                    #32,2
                                    #34,1
print(res)#35
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值