我把写的代码直接贴在下面了,注释的不是很仔细,主要是为了自己复习时方便查找,并不适合没有接触过python的人看,其实我也是初学者。

  1. #定义函数
  2. def my_abs(x):
  3. if x>=0:
  4. return x
  5. else:
  6. return -x
  7. #调用函数
  8. my_abs(-9)
  9.  
  10. #filter/map/reduce/lambda
  11.  
  12. #filter(function,sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple返回。(取决与sequence的类型)
  13. def f(x):
  14. return x%2!=0 and x%5!=0
  15. filter(f,range(1,20))
  16.  
  17. def f(x):return x!='u'
  18. filter(f,'uhjonu')
  19.  
  20. #map(function, sequence) :对sequence中的item依次执行function(item),执行结果组成一个List返回。
  21. def square(x):return x+x
  22. map(square,range(1,10))
  23. map(square,"abcdef")
  24. #map也支持多个sequence,这就要求function也支持相应数量的参数输入
  25. def plus(x,y):
  26. return x+y
  27. map(plus,range(5),range(5))
  28.  
  29. #reduce(function, sequence, starting_value):对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用
  30. def plus(x,y):
  31. return x+y
  32. reduce(plus,range(1,10))
  33. reduce(plus,range(1,10),20)
  34.  
  35. #lambda的用法
  36. g=lambda x:x*2
  37. g(8)

我把run出来的结果也贴在下面了,可能软件安装时出了一点问题,结果显示不是很好看,但很容易理解。

  1. def my_abs(x):
  2. ... if x>=0:
  3. ... return x
  4. ... else:
  5. ... return -x
  6. ...
  7. >>> my_abs(-9)
  8. 9>>>
  9.  
  10. >>>
  11. >>> def f(x):
  12. ... return x%2!=0 and x%5!=0
  13. ...
  14. >>> filter(f,range(1,20))
  15. [>>> 1, 3, 7, 9, 11, 13, 17, 19]
  16.  
  17. >>> def f(x):return x!='u'
  18. ...
  19. >>> filter(f,'uhjonu')
  20. '>>> hjon'
  21.  
  22. >>> def square(x):return x+x
  23. ...
  24. >>> map(square,range(1,10))
  25. [>>> 2, 4, 6, 8, 10, 12, 14, 16, 18]
  26. map(square,"abcdef")
  27. [>>> 'aa', 'bb', 'cc', 'dd', 'ee', 'ff']
  28. def plus(x,y):
  29. ... return x+y
  30. ...
  31. >>> map(plus,range(5),range(5))
  32. [>>> 0, 2, 4, 6, 8]
  33.  
  34. >>> def plus(x,y):
  35. ... return x+y
  36. ...
  37. >>> reduce(plus,range(1,10))
  38. 4>>> 5
  39. reduce(plus,range(1,10),20)
  40. 6>>> 5
  41.  
  42. >>> g=lambda x:x*2
  43. >>> g(8)
  44. 1>> >6

Python2.7学习笔记-定义函数、filter/map/reduce/lambda的更多相关文章

  1. 高阶函数 filter map reduce

    const app=new Vue({ el:'#app', data:{ books:[{ id:1, name:"算法导论", data: '2006-1', price:39 ...

  2. filter,map,reduce,lambda(python3)

    1.filter filter(function,sequence) 对sequence中的item依次执行function(item),将执行的结果为True(符合函数判断)的item组成一个lis ...

  3. Python内置函数filter, map, reduce

    filter.map.reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是Python列表方法的三架马车. 1. filter函数的功能相当 ...

  4. python关于list的三个内置函数filter(), map(), reduce()

    ''' Python --version :Python 2.7.11 Quote : https://docs.python.org/2/tutorial/datastructures.html#m ...

  5. Python 内置函数&filter()&map()&reduce()&sorted()

    常用内置函数 Python 2.x 返回列表,Python 3.x 返回迭代器 在进行筛选或映射时,输出的结果是一个数组,需要list帮助. 如:print(list(map(lambda x:x+1 ...

  6. Python中特殊函数和表达式 filter,map,reduce,lambda

    1. filter 官方解释:filter(function or None, sequence) -> list, tuple, or string Return those items of ...

  7. Python中 filter | map | reduce | lambda的用法

      1.filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tupl ...

  8. python: filter, map, reduce, lambda

    filter built-in function filter(f,sequence) filter can apply the function f to each element of seque ...

  9. Python学习(五)函数 —— 内置函数 lambda filter map reduce

    Python 内置函数 lambda.filter.map.reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python 的 lambda.fil ...

随机推荐

  1. java 服务

    2014年2月27日 10:30:55 学习 Java Service Wrapper 2014年2月27日 14:14:14太复杂了,以后研究吧. ###### 2014年2月27日 14:14:2 ...

  2. python callable 函数

    callable(object) 中文说明:检查对象object是否可调用.如果返回True,object仍然可能调用失败:但如果返回False,调用对象ojbect绝对不会成功. 注意:类是可调用的 ...

  3. python查询mysql中文乱码问题

    python2.7 查询或者插入中文数据在mysql中的时候出现中文乱码 --- 可能情况: 1.mysql数据库各项没有设置编码,默认为'latin' 2.使用MySQL.connect的时候没有设 ...

  4. JAVA中用于处理字符串的“三兄弟”

    JAVA中用于处理字符串常用的有三个类:java.lang.String.java.lang.StringBuffer.java.lang.StringBuilder,这三者的共同之处都是final类 ...

  5. Repository 设计模式介绍(转)

    在DDD设计中大家都会使用Repository pattern来获取domain model所需要的数据. 1.什么事Repository? "A Repository mediates b ...

  6. Javascript教程:js异步模式编程的4种解决方法

    随着人们对网站视觉效果及用户体验的要求越来越高,所以在未来网站的建设中,设计师们开始越来越多的使用了js文件来达到预期的效果,随着js文件的越来越多,令设计师们最头痛的事情也就来了,那就是Javasc ...

  7. 利用Flare3D和Stage3D创建3D

    Flare3D 是一款功能强大的引擎,它使得 Flash 中的 3D 内容管理变得更为简便. 它的设计宗旨是提供一个完美的开发工作流程,以便你能够获得事半功倍的效果. 本教程侧重讨论在 Flash 中 ...

  8. 车大棒浅谈for循环+canvas实现黑客帝国矩形阵

    背景: 一日在网上闲逛的之时,突然看到一个利用JQ插件实现canvas实现的电影黑客帝国的小Demo.觉得创意不错,就下载下来研究一下. 网上浏览jQuery的写法 $(document).ready ...

  9. Windows 10 IoT Core环境配置中的那些坑

    我使用的设备是Raspberry Pi 3B,想来国内的嵌入式玩具应该还是树莓派最常见吧.这段时间一直在捣鼓Win10 IoT,结果发现,从安装一直到编码调试一路下来全都是坑.写这篇东西一个是为了备忘 ...

  10. [JQuery]serialize()和serializeArray()

    1.serialize()把表单的值序列化成字符串 <html> <head> <script src="http://libs.baidu.com/jquer ...