python学习(4)函数

1. 因为函数是对象,所以很多构造能轻易的表达出来。比如我们要对下面的string做一些数据清洗:


还有一种做法:

注意:这种操作很奇特,对于string的内奸函数需要使用str.xxx访问

 一个更加函数化的方式能够让你方便的在一个高等级上转变一个string。可以把函数当做其他函数的参数,比如用内建的map函数,这个map函数能把一个函数用于一个序列号是哪个:


2. 匿名函数(lamda函数)

函数只有一行,结果能返回值。下面两个函数是一样的效果,函数短小,不需要重用很多次


3. 柯里化:局部参数应用

什么是柯里化?柯里化就是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数

的技术

4. 生成器(Generators)

生成器在python中很重要,能用来迭代序列,比如,迭代一个字典。


当遇到for loop这样的情景时,一个生成器能产生object给python解释器。大部分方法,除了list之类的object,都能接受迭代器。

比如内建的函数min、max、sum或是类型构造器list、tuple;

生成器是用于构造迭代对象的间接方式。不像其他函数一口气执行完,返回一个结果,生成器是多次返回一个序列,每请求一次,才会返回一个。

用yield可以构建一个生成器。


生成器表达式:与列表表达式相同,只不过使用括号:生成器表达式可以作为函数的参数,但是列表表达式不能作为函数的参数


















  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值