一、生成器,generator,节省内存,但是增加了CPU的计算时间

(下节课讲函数怎么变成生成器)

每次循环的时候,就按照这个规则(自己定义的逻辑)去生成一个数据。

res = [ 'a','1' ]

只有在每次循环的时候,才按照这个规则去生成数据。

all = (i for i in range(5))
print(all)# generator生成器

附:列表生成式

num = [str(i).zfill(2) for i in range(10)]# list
nums = ( str(i).zfill(2) for i in range(10) )# 生成器,外层为[],则为列表生成式,外层为(),则为生成器
print(nums)
for n in nums:
print(n)

二、map,循环调用函数

def makir(dir_name):
if not os.path.isdir(dir_name):
os.mkdir(dir_name)
return True dir_names = ['dir1','dir2','dir3'] # list(map(makir,dir_names))# 循环帮你调用函数

三、filter,过滤

# 过滤,它把函数处理结果为假的数据过滤掉
# 只保留函数返回真的数据
def my(num):
if num%2==0:
return True
res = list( filter(my, range(10) ))# 过滤,它把函数处理结果为假的数据过滤掉
res2 = list( map( my,range(10) ) )# 不管返回什么,都拿到全部结果
print('filter...res',res)
# 运行结果:filter...res [0, 2, 4, 6, 8]
print('map...res2',res2)
# 运行结果:map...res2 [True, None, True, None, True, None, True, None, True, None]

map/fileter的更多相关文章

  1. Python基础篇【第2篇】: Python内置函数(一)

    Python内置函数 lambda lambda表达式相当于函数体为单个return语句的普通函数的匿名函数.请注意,lambda语法并没有使用return关键字.开发者可以在任何可以使用函数引用的位 ...

  2. python基础--内置函数filter,reduce

    movie_people=["sb+_alex","sb_wupeiqi","han"] # def filter_test(array): ...

  3. 匿名函数 python内置方法(max/min/filter/map/sorted/reduce)面向过程编程

    目录 函数进阶三 1. 匿名函数 1. 什么是匿名函数 2. 匿名函数的语法 3. 能和匿名函数联用的一些方法 2. python解释器内置方法 3. 异常处理 面向过程编程 函数进阶三 1. 匿名函 ...

  4. mapreduce中一个map多个输入路径

    package duogemap; import java.io.IOException; import java.util.ArrayList; import java.util.List; imp ...

  5. .NET Core中间件的注册和管道的构建(3) ---- 使用Map/MapWhen扩展方法

    .NET Core中间件的注册和管道的构建(3) ---- 使用Map/MapWhen扩展方法 0x00 为什么需要Map(MapWhen)扩展 如果业务逻辑比较简单的话,一条主管道就够了,确实用不到 ...

  6. Java基础Map接口+Collections工具类

    1.Map中我们主要讲两个接口 HashMap  与   LinkedHashMap (1)其中LinkedHashMap是有序的  怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...

  7. Java基础Map接口+Collections

    1.Map中我们主要讲两个接口 HashMap  与   LinkedHashMap (1)其中LinkedHashMap是有序的  怎么存怎么取出来 我们讲一下Map的增删改查功能: /* * Ma ...

  8. 多用多学之Java中的Set,List,Map

            很长时间以来一直代码中用的比较多的数据列表主要是List,而且都是ArrayList,感觉有这个玩意就够了.ArrayList是用于实现动态数组的包装工具类,这样写代码的时候就可以拉进 ...

  9. Java版本:识别Json字符串并分隔成Map集合

    前言: 最近又看了点Java的知识,于是想着把CYQ.Data V5迁移到Java版本. 过程发现坑很多,理论上看大部分很相似,实践上代码写起来发现大部分都要重新思考方案. 遇到的C#转Java的一些 ...

随机推荐

  1. 小记一次mysql启动失败没有日志的处理

    本来mysql好的,之前清理了一次tmp下的东西,mysql在查询的时候提示: Can't create/write to file '/tmp/ib0n3frL 然后停止启动: [root@sevc ...

  2. nat123安装启动教程帮助

    转自:http://www.nat123.com/Pages_17_291.jsp 本文就nat123安装启动可能遇到的问题及与安全狗影响处理. 下载安装nat123客户端安装包.第一次安装使用,可选 ...

  3. JSP页面生成验证码功能

    <%@ page language="java" contentType="text/html; charset=UTF-8" import=" ...

  4. Django中favicon.ico文件的配置

    默认情况下,浏览器访问一个网站的时候,同时还会向服务器请求“/favicon.ico”这个URL,目的是获取网站的图标. 若没有配置的话,Django就会返回一个404错误,并且浏览器接收到这个404 ...

  5. web表单disable问题

    Web表单提交之disabled问题 例如,有如下表单 <form id="inputForm" action="shorttermrental.action&qu ...

  6. 【281】◀▶ arcpy.mapping 常用类说明

    arcpy.mapping 教程入门 arcpy.mapping 指导原则 按字母顺序排序的 arcpy.mpping 类列表 按字母顺序排序的 arcpy.mpping 函数列表 按字母顺序排序的 ...

  7. SqlServer数据导入到ORACLE

    ORACLE中执行 select * from SYSTEM."employ_epl"

  8. 2-1 gradle安装

    因为Gradle是基于JVM的,所以一定要确保本机已经安装了JDK,我们可以通过java -version来验证一下是否已经安装了JDK.  bin目录里面是两个可执行文件,一个是Windows下面的 ...

  9. elasticsearch2.x线程池配置

    一个Elasticsearch节点会有多个线程池,但重要的是下面四个: 索引(index):主要是索引数据和删除数据操作(默认是cached类型) 搜索(search):主要是获取,统计和搜索操作(默 ...

  10. 【bzoj1050】[HAOI2006]旅行comf

    1050: [HAOI2006]旅行comf Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2813  Solved: 1534[Submit][St ...