python 匹配字符串map lambda函数_Python map amp; reduce 以及lambda匿名函数 - jvisualvm - ITeye博客...
map()
map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。
使用map实现一个f(x) = x * x的功能
def f(x):
return x * x
m = map(f, list(range(1, 10)))
# [1, 4, 9, 16, 25, 36, 49, 64, 81]
print(list(m))
另外可以使用lambda函数简化
# [1, 4, 9, 16, 25, 36, 49, 64, 81]
print(list(map(lambda x: x * x, list(range(1, 10)))))
Console Output
Note:
可以看出
lambda x: x * x
实际上就是:
def f(x):
return x * x
把list中的所有数字转为字符串
# ['1', '2', '3', '4', '5', '6', '7', '8', '9']
print(list(map(str, list(range(1, 10)))))
Console Output
reduce()
reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:
reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
使用reduce对一个序列求和
from functools import reduce
def add(x, y):
return x + y
# 55
print(reduce(add, list(range(1, 11))))
# 55
print(reduce(lambda x, y: x + y, list(range(1, 11))))
Console Output
把序列[1, 2, 3, 4, 5, 6, 7, 8, 9]变换成整数123456789
from functools import reduce
def fn(x, y):
return x * 10 + y
# 123456789
print(reduce(fn, list(range(1, 10))))
# 123456789
print(reduce(lambda x, y: x * 10 + y, list(range(1, 10))))
Console Output
map()和reduce()整合,把str转换位int
from functools import reduce
def char2num(s):
return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s]
# '13579' => 13579
print(reduce(fn, map(char2num, '13579')))
# '13579' => 13579
print(reduce(lambda x, y: x * 10 + y, map(char2num, '13579')))
def str2int(s):
def fn(x, y):
return x * 10 + y
def char2num(s):
return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7, '8': 8, '9': 9}[s]
return reduce(fn, map(char2num, s))
print(str2int('13579'))
Console Output
参考资料:
python 匹配字符串map lambda函数_Python map amp; reduce 以及lambda匿名函数 - jvisualvm - ITeye博客...相关推荐
- python mssql session_python的web框架webpy【session amp; cookie】五 - 莫激动 - ITeye博客
webpty中使用session非常简单 import web web.config.debug = False urls = ( "/count", "count&qu ...
- python二分法编程_python基础18——二分法面向过程匿名函数
二分法 算法:是高效解决问题的办法 算法之二分法 格式: def binary_search(ls, num, lower=0, high=None): if high is None: high = ...
- python匿名函数可以赋值给变量_python3的匿名函数 | 吴老二
匿名函数也是函数的一种,不过匿名函数和其他函数不一样,匿名函数只能是一种表达式,不能有return,返回值就是表达式的结果.匿名函数的关键词就是lambda,可以结合其他的函数一起使用,匿名函数的好处 ...
- python map函数_Python map()函数
python map函数 Python map() function is used to apply a function on all the elements of specified iter ...
- Python函数式编程-map()、zip()、filter()、reduce()、lambda()
三个函数比较类似,都是应用于序列的内置函数.常见的序列包括list.tuple.str map函数 map函数会根据提供的函数对指定序列做映射. map函数的定义: map(function, seq ...
- python正则匹配字符串中的数字_Python正则表达式匹配字符串中的数字
1.使用"\d+"匹配全数字 代码: import re zen = "Arizona 479, 501, 870. Carlifornia 209, 213, 650. ...
- python正则表达式匹配字符串中的电话号码_Python正则表达式匹配字符串中的数字...
这篇文章主要介绍了Python正则表达式匹配字符串中的数字,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 1.使用"\d+"匹配全数字 代码: ...
- python创建匿名函数_Python练习实例48 | 使用lambda来创建匿名函数。
关于lambda函数,在Python当中属于匿名函数,顾名思义,就是函数严格上来说只是定义了一个算法,并没有具体的名称. 小黄人.jpg 关于究竟什么是lambda函数,作者这里在这里也不做过多的讲解 ...
- python匹配数字开头的内容_python使用正则表达式匹配字符串开头并打印示例
python 正则表达式,怎样匹配以某个字符串开头,以str ="abcdefg123213qwe" 比如要匹配以abc开头,以qwe结尾,要怎样写呢?匹配以某个字符串开头,以某个 ...
最新文章
- python与excel结合能做什么-Python网络爬虫与文本数据分析
- optee内核中malloc函数的原理介绍
- android 添加广告用proguard混淆后不显示问题解决方法
- bzoj4665: 小w的喜糖
- 工厂模式——JavaScript
- 将台式机组成云服务器_云桌面是什么?用了两年云桌面的真实感受
- 区块链系列教程之:比特币中的网络和区块链
- TensorFlow学习笔记(二十八)CNN的9大模型之AlexNet
- c++ 为什么要按它们声明的顺序初始化成员变量?
- 【XML】XML实例模板
- 那些文献阅读能力爆表的科研学子,都在偷偷做这件事……
- 微信小程序 - 基础 - 003 - WEUI - 基本表单组件 - form - 页面数据提交和获取 - 01
- android 如何开发出一款知名应用:构思篇
- 1 Oracle数据库环境搭建
- 大数据的分析手段有哪几种
- 关于项目部署到外网后,访问域名失败的原因之一
- 你所不知道的 AI 进展
- ArcMap10 批量等距离分割线段
- 怎么把度分秒化成小数_角度的度分秒与小数点格式互相转换
- linux phpstudy卸载,linux 安装phpstudy
热门文章
- 计算机语言史话论文,【论文节选】自然语言处理发展历史。
- 上位机和下位机的概念,理解如何实现PC从PLC中读取数据?
- springboot整合mybatisplus中@Mapper与@MapperScan的使用
- OS复习——设备管理习题
- request.getContextPath()取不到值
- 什么叫缺位_一位父亲能够给予孩子的最好礼物是什么?看看这部电影给出的答案...
- local service system账户_systemd.service学习和使用总结
- linux和信息资源管理,Linux top命令详解
- poi 不自动计算 设置单元格公式_Java POI:如何读取Excel单元格的值而不是计算公式?...
- python+ BeautifulSoup抓取“全国行政区划信息查询平台”的省市区信息