day11 map函数
场景模拟:实现一个列表内所有元素 *2 的效果
普通的实现方式
单个列表是可以做到很轻松的实现,但是如果我又多个列表都要这个操作,那每个都操作就会重复代码
ret = []
num_1 = [1,2,10,5,3,7]
for i in num_1:
ret.append(i ** 2)
print(ret)
用函数实现减少重复代码,但是看起来代码的量不少
而且用这种参数代入的方式也会出现限定的感觉,比如现在我运算方法又变了呢
num_1 = [1,2,10,5,3,7]
num1_1 = [1,2,10,5,3,7]
def map_tes (array):
ret = []
for i in array:
ret.append(i ** 2)
return ret
print(map_tes(num1_1))
print(map_tes(num_1))
单参数只能传要处理的数据,运行的方法是写死的
运算方法函数化,双参数传入数据和规定运算可以大幅升级代码
代价是代码更复杂更长,当然可以使用匿名函数简写代码
num_1 = [1,2,10,5,3,7]
num1_1 = [1,2,10,5,3,7]
def add_one(x):
return x+1
# lambda x:x+1
def reduce_one(x):
return x-1
# lambda x:x-1
def map_test(func,array):
ret = []
for i in array:
res = func(i)
ret.append(res)
return ret
print(map_test(add_one,num1_1))
print(map_test(lambda x:x+1,num1_1)) # 等效上一条
print(map_test(reduce_one,num_1))
print(map_test(lambda x:x-1,num_1)) # 等效上一条
根据现有的知识能做到的最好的终极版本
num_1 = [1,2,10,5,3,7]
def map_test(func,array):
ret = []
for i in array:
res = func(i)
ret.append(res)
return ret
map_test(lambda x:x+1,num_1)
map 函数 按照顺序处理数据,不打乱顺序
格式 : map(方法,实参)
极大的压缩了代码量
num_1 = [1,2,10,5,3,7]2 res = map(lambda x:x+1,num_1)
3 print("内置函数map处理结果",list(res))
day11 map函数的更多相关文章
- map 函数----filter函数
# map 函数 l = (1,2,4,5,6,7,8,9,) print(list(map(lambda x:x**2,l)))#使用list类型((map函数(lambda 匿名函数定义x值:x* ...
- 实现python中的map函数
假设Python没有提供map()函数,自行编写my_map()函数实现与map()相同的功能.以下代码在Python 2.7.8中实现. 实现代码: def my_map(fun,num): i = ...
- js parseInt和map函数
今天看了一个js的题目["1","2","3"].map(parseInt),看到后脑海中浮现的答案是[1,2,3],但是看到正确答案后蒙了 ...
- JavaScript中map函数和filter的简单举例(转)
js的数组迭代器函数map和filter,可以遍历数组时产生新的数组,和python的map函数很类似1)filter是满足条件的留下,是对原数组的过滤:2)map则是对原数组的加工,映射成一一映射的 ...
- Python-lambda函数,map函数,filter函数
lambda函数主要理解: lambda 参数:操作(参数). lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值.lambda语句构建的其实是一个函数对象 map函数: ma ...
- map() 函数
map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于li ...
- STL : map函数的运用 --- hdu 4941 : Magical Forest
Magical Forest Time Limit: 24000/12000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Other ...
- Swift之map函数的强大之处
CollectionType Map 在CollectionType的extension中map方法的定义: extension CollectionType { /// Return an `Arr ...
- python map函数
map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于li ...
随机推荐
- highcharts为X轴标签添加链接
$(function () { var categoryLinks = { 'Foo': 'http://www.google.com/search?q=foo', 'Bar': 'http://ww ...
- 『转』MySQL存储过程语法例子
原文地址:http://blog.chinaunix.net/uid-540802-id-138873.html ------------------------- 自动生成随机数据存储过程 ---- ...
- 使用Windows API进行串口编程
使用Windows API进行串口编程 串口通信一般分为四大步:打开串口->配置串口->读写串口->关闭串口,还可以在串口上监听读写等事件.1.打开和关闭串口Windows中串口 ...
- VS诊断工具打开失败
使用管理员模式打开cmd,输入以下命令~ C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -iC:\Windows\Micros ...
- 如何把js的代码写的更加容易维护(一)--面向对象编程
总是头疼javascript的代码写起来不可维护,那么看看下面的代码: (function (w, $) { var app = { init: function () { var me = this ...
- CF11D A Simple Task 状压DP
传送门 \(N \leq 19\)-- 不难想到一个状压:设\(f_{i,j,k}\)表示开头为\(i\).结尾为\(j\).经过的点数二进制下为\(k\)的简单路总数,贡献答案就看\(i,j\)之间 ...
- 记一次MongoDB裸奔
导言 大意失荆州,裸奔的 MongoDB 被黑了.虽然并不是什么非常重要的数据,但也给自己敲响的一个警钟.虽然我们平时不容易接触到数据安全,但我们在开发,部署项目的时候,一定要养成良好的安全意识. 根 ...
- PHP生成QRCode二维码
php生成QRCode二维码示例 <?php //引入 phpqrcode 类库 //phpqrcode下载地址:https://github.com/t0k4rt/phpqrcode //或从 ...
- CSS 尺寸 (Dimension) 实例
CSS 尺寸 (Dimension) 实例CSS 尺寸属性CSS 尺寸属性允许你控制元素的高度和宽度.同样,还允许你增加行间距. 属性 描述height 设置元素的高度.line-height 设置行 ...
- mysql主从同步(5)-同步延迟状态考量(seconds_behind_master和pt-heartbea)
一般情况下,我们是通过"show slave status \G;"提供的Seconds_Behind_Master值来衡量mysql主从同步的延迟情况.具体说明见:mysql主从 ...