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

#定义函数
def my_abs(x):
if x>=0:
return x
else:
return -x
#调用函数
my_abs(-9) #filter/map/reduce/lambda #filter(function,sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple返回。(取决与sequence的类型)
def f(x):
return x%2!=0 and x%5!=0
filter(f,range(1,20)) def f(x):return x!='u'
filter(f,'uhjonu') #map(function, sequence) :对sequence中的item依次执行function(item),执行结果组成一个List返回。
def square(x):return x+x
map(square,range(1,10))
map(square,"abcdef")
#map也支持多个sequence,这就要求function也支持相应数量的参数输入
def plus(x,y):
return x+y
map(plus,range(5),range(5)) #reduce(function, sequence, starting_value):对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用
def plus(x,y):
return x+y
reduce(plus,range(1,10))
reduce(plus,range(1,10),20) #lambda的用法
g=lambda x:x*2
g(8)

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

def my_abs(x):
... if x>=0:
... return x
... else:
... return -x
...
>>> my_abs(-9)
9>>> >>>
>>> def f(x):
... return x%2!=0 and x%5!=0
...
>>> filter(f,range(1,20))
[>>> 1, 3, 7, 9, 11, 13, 17, 19] >>> def f(x):return x!='u'
...
>>> filter(f,'uhjonu')
'>>> hjon' >>> def square(x):return x+x
...
>>> map(square,range(1,10))
[>>> 2, 4, 6, 8, 10, 12, 14, 16, 18]
map(square,"abcdef")
[>>> 'aa', 'bb', 'cc', 'dd', 'ee', 'ff']
def plus(x,y):
... return x+y
...
>>> map(plus,range(5),range(5))
[>>> 0, 2, 4, 6, 8] >>> def plus(x,y):
... return x+y
...
>>> reduce(plus,range(1,10))
4>>> 5
reduce(plus,range(1,10),20)
6>>> 5 >>> g=lambda x:x*2
>>> g(8)
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. github的SSH配置如下

    Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git ...

  2. Asp.NET开启一个线程,不停的执行

    using System;using System.Threading;using System.Threading.Tasks; class StartNewDemo{    static void ...

  3. MMA

    在32位的系统上,线性地址空间可达到4GB,这4GB一般按照3:1的比例进行分配,也就是说用户进程享有前3GB线性地址空间,而内核独享最后1GB线性地址空间.由于虚拟内存的引入,每个进程都可拥有3GB ...

  4. logback的日志配置文件

    日志配置文件logback.xml: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE con ...

  5. php正则表达式简介

    正则表达式简介 正则表达式Regular Expression,使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.代表性书籍<正则表达式之道>里面有详细论述,本书籍为个人查阅之用力 ...

  6. SQL迅速增加表中记录语句

    很多时候我么需要为表中疯狂增加N条记录,那么我们该使用什么语句实现该功能呢?如下: insert into 表名(字段1,字段2,字段3....)  select 字段1,字段2,字段3.... fr ...

  7. Java:网络编程

    一.因特网地址 InetAddress类:实现主机名和因特网地址之间的转换. InetAddress address=InetAddress.getByName(String);返回一个InetAdd ...

  8. SVN官方版本下载地址

    TortoiseSVN 客户端 &  Language packs 语言包 : https://tortoisesvn.net/downloads.html VisualSVN 插件官方地址: ...

  9. QJsonObject和QJsonArray的巨坑

    最近用Qt的QJsonObject和QJsonArray当做类变量来存储运行信息,发现这两货真的是巨坑.让人有一种JJ fly的感觉/(ㄒoㄒ)/~~. 写了个例子来说明下: MainWindow:: ...

  10. 在Node.js中使用RabbitMQ系列二 任务队列

    在上一篇文章在Node.js中使用RabbitMQ系列一 Hello world我有使用一个任务队列,不过当时的场景是将消息发送给一个消费者,本篇文章我将讨论有多个消费者的场景. 其实,任务队列最核心 ...