随笔分类 -  python

摘要:1. 在列表中查找: 对于已经排序的列表考虑用bisect模块来实现查找元素,该模块将使用二分查找实现 而快速插入一个元素可以用: 这样就插入元素并且不需要再次调用 sort() 来保序,要知道对于长list代价很高. 2. set代替列表: 比如要对一个list进行去重,最容易想到的实现: 显然上 阅读全文
posted @ 2016-03-23 20:48 开心玩数据 阅读(386) 评论(0) 推荐(1)
摘要:装饰器的定义很是抽象,我们来看一个小例子。 这是一个很无聊的函数没错。但是突然有一个更无聊的人,我们称呼他为B君,说我想看看执行这个函数用了多长时间,好吧,那么我们可以这样做: 很好,功能看起来无懈可击。可是蛋疼的B君此刻突然不想看这个函数了,他对另一个叫foo2的函数产生了更浓厚的兴趣。 怎么办呢 阅读全文
posted @ 2016-03-23 20:40 开心玩数据 阅读(146) 评论(0) 推荐(0)
摘要:1、拆箱 2、使用拆箱进行变量交换 3、扩展的拆箱(Python 3支持) 4、负数索引 5、列表切片(a[start:end]) 6、负数索引的列表切片 7、带步数的列表切片(a[start:end:step]) 8、负数步数的列表切片 9、列表切片赋值 10、切片命名(slice(start, 阅读全文
posted @ 2016-03-23 20:39 开心玩数据 阅读(426) 评论(0) 推荐(0)
摘要:Streaming是Hadoop提供的一个可以使用其他编程语言来进行MR编程的API,它使用Unix标准输入输出作为Hadoop和其他编程语言的开发接口,非常轻便。而开发者可以选择自己擅长的编程语言,并且只需要在MR程序中实现计算逻辑后,指定输出即可。     Python可以通过Streaming 阅读全文
posted @ 2016-03-14 22:33 开心玩数据 阅读(1670) 评论(0) 推荐(0)
摘要:提到性能,最容易想到的是降低复杂度,一般可以通过测量代码回路复杂度(cyclomatic complexitly)和Landau符号(大O)来分析, 比如dict查找是O(1),而列表的查找却是O(n),显然数据的存储方式选择会直接影响算法的复杂度。      1. 在列表中查找:    对于已经排 阅读全文
posted @ 2016-03-14 22:22 开心玩数据 阅读(420) 评论(0) 推荐(0)
摘要: gensim是python下一个极易上手的主题模型程序库(topic model),网址在:http://radimrehurek.com/gensim/index.html   安装过程较为繁琐,参考http://radimrehurek.com/gensim/install.html 中的步骤 阅读全文
posted @ 2016-03-14 21:22 开心玩数据 阅读(1286) 评论(0) 推荐(0)
摘要:![enter image description here][1]例子:涉及一个特征器,给定一个姓名分析出是男性名字还是女性名字 分析:男性和女性的名字有一些鲜明的特点。以a,e 和i 结尾的很可能是女性,而以k,o,r,s 结尾的很可能是男性。让我们建立一个分类器更精确地模拟这些差异。 ![en 阅读全文
posted @ 2016-03-14 21:20 开心玩数据 阅读(332) 评论(0) 推荐(0)
摘要:Python是目前最流行、最易学最强大的编程语言之一,无论你是新手还是老鸟,无论是用于机器学习还是web开发(Pinterest就是案例),Python都是一件利器。此外,Python不但人气日益高涨,而且Python程序员的薪酬行情也是水涨船高,北美Python程序员的平均年薪高达10万美元。对于... 阅读全文
posted @ 2015-12-23 14:12 开心玩数据 阅读(356) 评论(0) 推荐(0)
摘要:# -*- coding: utf-8 -*-import numpy as np#----------------------------------------#-- 定义 ndarray#-- 先申明为python的序列,再转化为numpy的数组#--------------------... 阅读全文
posted @ 2015-11-04 14:59 开心玩数据 阅读(385) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''CSV 常用API1)reader(csvfile[, dialect='excel'][, fmtparam]),主要用于CSV 文件的读取,返回一个reader 对象用于在CSV 文件内容上进行行迭代。 参数: ... 阅读全文
posted @ 2015-11-04 14:51 开心玩数据 阅读(22659) 评论(0) 推荐(1)
摘要:# -*- coding:utf-8 -*-#不要在lists上迭代。使用map和reduce。#Map接受一个方法和一个集合作为参数。它创建一个新的空集合,以每一个集合中的元素作为参数调用这个传入的方法,#然后把返回值插入到新创建的集合中。最后返回那个新集合。name_lengths = map... 阅读全文
posted @ 2015-11-04 14:49 开心玩数据 阅读(255) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''Collection、Array、Heapq、Bisect、Weakref、Copy以及Pprintcollections模块包含了内建类型之外的一些有用的工具,例如Counter、defaultdict、OrderedDict、deque以及na... 阅读全文
posted @ 2015-11-04 14:47 开心玩数据 阅读(313) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''Python中自带的logging 模块提供了日志功能,它将logger 的level 分为5 个级别DEBUG 详细的信息,在追踪问题的时候使用INFO 正常的信息WARNING 一些不可预见的问题发生,或... 阅读全文
posted @ 2015-11-04 14:46 开心玩数据 阅读(316) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''pickle 估计是最通用的序列化模块了,它还有个C 语言的实现cPickle,相比pickle 来说具有较好的性能,其速度大概是pickle 的1000 倍,因此在大多数应用程序中应该优先使用cPickle(注:cPickle 除了不能被继承之外... 阅读全文
posted @ 2015-11-04 14:45 开心玩数据 阅读(640) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''以现阶段最好用的参数处理标准库是argparse'''import argparseparser = argparse.ArgumentParser()parser.add_argument('-o', '--output')parser.add_... 阅读全文
posted @ 2015-11-04 14:44 开心玩数据 阅读(479) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''1、getboolean() 根据一定的规则将配置项的值转换为布尔值getboolean() 的真值规则: 0、no、false 和off 都会被转义为False 1、yes、true 和on则都被转义为True ... 阅读全文
posted @ 2015-11-04 14:43 开心玩数据 阅读(399) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-'''用法: sorted(iterable[, cmp[, key[, reverse]]]) s.sort([cmp[, key[, reverse]]]) ‰‰cmp 为用户定义的任何比较函数,函数的参数为两个可比较的元素(来自i... 阅读全文
posted @ 2015-11-04 14:42 开心玩数据 阅读(232) 评论(0) 推荐(0)
摘要:# -*- coding:utf-8 -*-#'''Python re 的主要功能:re.compile(pattern[, flags])把正则表达式的模式和标识转化成正则表达式对象,供 match() 和 search() 这两个函数使用。re 所定义的 flag 包括:re.I 忽略大小写r... 阅读全文
posted @ 2015-11-04 14:41 开心玩数据 阅读(265) 评论(0) 推荐(0)
摘要:ETL应用场景中,若对端接口文件未能提供,任务会处于循环等待,直到对端提供为止,该方法极大的消耗了系统资源。为此想到了一种方法,一次获取一个平台的文件,实现思路如下: 1、第一次获取对端平台提供目录下给定日期的所有接口文件,并保存文件列表; 2、后续每隔n分钟重启获取任务,每次先获取文件列表,和上... 阅读全文
posted @ 2015-10-10 23:22 开心玩数据 阅读(749) 评论(0) 推荐(0)