Python实战171201筛选数据
Python应用:网络编程,系统网络运维,3D游戏开发,图形界面开发,科学与数字计算,web后端。
对着慕课的练习,果然慕课的实战也是差距很大-------centos7 -Python3.6.3
筛选数据:
通常做法就是迭代if。
--------去除负数------------
data = [1,2,3,4,5,6,7,-2,-3,-7]
res = [ ]
for x in data:
if x>=0:
res.append(x)
print res
-------------------------------

列表
>>>import random
#载入模块,当然这个模块也是需要熟悉的
>>>data=[random.randint(-10,20) for _ in range(10)]
#Python3中没有xrange,range替换xrange了,当然第一学就记住range变成一个生成器了。性能优化结果
>>>print (date) >>>date
#Python3print都是带括号的,感觉像是回归c呢?
>>>list(filter(lambda x :x>=0,data)) #函数式编程
#python3中貌似都需要加个list这种壳么?为了优化性能 filter函数:filter()为已知的序列的每个元素调用给定的布尔函数,调用中,返回值为非零的元素将被添加至一个列表中
>>>[x for x in data if x>=0] #列表解析
>>>timeit('[x for x in data if x>=0]','data=[1,2,3,4,5,6,7,-2,-3,-7],number=1000000')
# timeit(函数名_字符串,运行环境_字符串,number=运行次数)默认就是一百万
>>>timeit('filter(lambda x:x>=0,data)','data=[1,2,3,-1,-2,4]')
#timeit只接受有且唯一 一个环境。。。。。。哇,这句话因为少个逗号让我好一阵郁闷
#然后就是比对时间咯,发现列表解析速度不是最快!!!,嗨呀真是信了你去年的结论

当然老师说的是对的,前提是显示数据,而不是处理数据!
字典
>>>d={x:random.ranint(60.100) for x in ranger(1,21)} #创立字典
>>>d >>>print (d) #显示集合
>>>{k:v for k,v in d.items() if v > 80} >>>{k:v for k,v in _.items() if v > 80} #过滤
集合
>>>s=set(data) #创立集合
>>>s >>>print(s) #显示集合
>>>{x for x in s if x%3==0} #过滤
Python实战171201筛选数据的更多相关文章
- Python之filter筛选数据工具
# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之filter筛选数据工具 #http://python.jobbole.com/82597/ ...
- Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据
Python 高效编程技巧实战(2-1)如何在列表,字典, 集合中根据条件筛选数据 学习目标 1.学会使用 filter 借助 Lambda 表达式过滤列表.集合.元组中的元素: 2.学会使用列表解析 ...
- python 学习笔记(一):在列表、字典、集合中根据条件筛选数据
一.在列表中筛选数据 在列表中筛选出大于等于零的数据,一般通用的用法代码如下: data = [3, -9, 0, 1, -6, 3, -2, 8, -6] #要筛选的原始数据列表 result = ...
- Python强化训练笔记(一)——在列表,字典,集合中筛选数据
列表,字典,集合中根据条件筛选数据,如下所示 列表:[-10,2,2,3,-2,7,6,9] 找出所有的非负数 字典:{1:90,2:55,3:87...} 找出所有值大于60的键值对 集合:{2,3 ...
- python基础一 -------如何在列表字典集合中根据条件筛选数据
如何在列表字典集合中根据条件筛选数据 一:列表 先随机生成一个列表,过滤掉负数 1,普通for循环迭代判断 2,filter()函数判断,filter(函数,list|tuple|string) fi ...
- python数据结构-如何在列表、字典、集合中根据条件筛选数据
如何在列表.字典.集合中根据条件筛选数据 问题举例: 过滤列表[1, 2, 5, -1, 9, 10]中的负数 筛选字典{“zhangsan”:97, "lisi":80, &qu ...
- Python day11 filter函数筛选数据,reduce函数压缩数据的源码详解
1.filter滤波器函数定义一个数组,需求:过滤出带ii的字符串 arr=['dsdsdii','qqwe','pppdiimmm','sdsa','sshucsii','iisdsa'] def ...
- python实战提升--1
#python实战提升 1. 如何在列表.字典.集合中根据条件筛选数据? python中for _ in range(10)与for i in range(10)有何区别 下划线表示 临时变量, 仅用 ...
- 零基础入门Python实战:四周实现爬虫网站 Django项目视频教程
点击了解更多Python课程>>> 零基础入门Python实战:四周实现爬虫网站 Django项目视频教程 适用人群: 即将毕业的大学生,工资低工作重的白领,渴望崭露头角的职场新人, ...
随机推荐
- Vue 随机分配的打扫卫生H5 :打扫让我快乐
情况是这样子的,每周四是我们小组打扫卫生,一共有四件活,7个人分配. 活分别是 : 扫地 拖地 倒垃圾 擦桌子 人分别是: '军', '春', '龙', '东', '贤', '磊','卿' 但是,每次 ...
- docker-maven-plugin插件设置Docker的buildArgs
docker-maven-plugin是spotify出品的一款针对spring boot项目的docker插件,可将spring boot项目打包到docker镜像中. 如果在编译docker镜像时 ...
- 获取标准shell 命令的输出内容
cmdline.h #include <iostream> #include <mutex> class Cmdline { private: Cmdline() = defa ...
- iis 和 node express 共用80端口 iisnode 全过程
一.首先下载iisnode.exe https://github.com/tjanczuk/iisnode/wiki/iisnode-releases 链接 安装完毕! 二.打开IIS 7 选中 D ...
- 微信小程序中的AJAX——POST,GET区别
注意:发送服务器时的DATA 最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String .转换规则如下: 对于 GET 方法的数据,会将数 ...
- [LeetCode] Buddy Strings 伙计字符串
Given two strings A and B of lowercase letters, return true if and only if we can swap two letters i ...
- VS2017Release+x64失败,LNK1104,无法打开文件"msvcprt.lib"
采用VS2017+Qt5.10联合开发环境建立开发,将Qt的库包含到VS中使用VS2017的Debug+x64模式调试程序,通过并出现对应的EXE应用程序! 但是转换到Release+x64模式出现问 ...
- Redis安装及使用
1.我们可以通过在官网下载tar.gz的安装包,或者通过wget的方式下载 进入要下载到的文件夹: wget http://download.redis.io/releases/redis-4.0.1 ...
- yarn的工作原理
1.YARN 是什么? 从业界使用分布式系统的变化趋势和 hadoop 框架的长远发展来看,MapReduce的 JobTracker/TaskTracker 机制需要大规模的调整来修复它在可扩展性, ...
- 2003server r2 + sql 2000 sp4 环境配置
由于工作需求需要配置一个windows 2003 server r2 + sql 2000 sp4的环境: 一.2003server准备系统: msdn 下载 分清x86还是x64 一共有两个cd准备 ...