自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 用正则表达式为文本分词

raw = """ ... ... """ import re分词一re.split(r' ', raw)在空格符处分割文本是最简单的方法分词二re.split(r'[ \t\n]+', raw)或re.split(r'\s+', raw)所有空白字符在正则表达式前加字母“r”,告诉Python解释器按照字面表示对待字符串二不去处理正则表达式中包含的反斜杠字符。re.

2017-02-21 15:08:27 5411

原创 规范化文本

[w.lower() for w in text], 通过使用lower()将文本规范化为小写。还有更多的规范化文本的尝试。词干提取器Porter词干提取器porter = nltk.PorterStemmer()[porter.stem(t) for t in tokens]词形归并词形归并是一个过程,将一个词的各种形式映射到这个词的标准的或引用的形式,也称为词位或词元。WordNet词形归并器

2017-02-21 15:05:24 726

原创 利用NLTK处理HTML

处理流程下载网页,如果需要可以剥除HTML,整理成所需要的内容import nltkfrom urllib import urlopenurl = "http://www.baidu.com"html = urlopen(url).read()raw = nltk.clean_html(html)raw = raw[750:434343]标记文本,选出其中感兴趣的标记,创建一个NLTK文本t

2017-02-21 15:04:25 2281

原创 字母查找树

字母查找树(letter trie)是一种可以用来索引词汇的数据结构,一次一个字母。构建一个字母查找树:一个++递归++函数建立一个嵌套的字典结构,每一级嵌套包含给定前缀的所有单词,而子查找树含有所有可能的后续词In [15]: def insert(trie, key, value): ...: if key: ...: first, rest = key[

2017-02-21 15:02:41 613

原创 Ubuntu下配置PYTHON工作环境

科学运算sudo apt-get install pipsudo pip install ...深度学习sudo pip install kerassudo pip install tensorflowxgboostsudo git clone --recursive https://github.com/dlmc/xgboostcd xgboostsudo make -j4export PYTHO

2017-02-21 15:01:32 948

原创 代码复用

函数+模块比起多次重复运用相同的代码,把代码放在 函数 中会更有效和可靠。使用函数可以为程序节约空间。更重要的是:为函数选择名称可以提高程序可读性。函数是指带命名的代码块,可执行一些明确的任务。函数通常使用称为参数的变量进行输入,并且可能生成一些结果,称为返回值。关键字def局部变量一个文件中的变量和函数的集合被称为Python模块(module)。相关模块的集合称为包(package)。包的集合成

2017-02-21 14:54:34 507

原创 Python面向对象编程

类和实例class MyNewObjectType(bases): 'define MyNewObjectType class' class_suite实例化myFirstObject = MyNewObjectType()方法class MyDataWithMethod(object): def printFoo(self): print 'You invo

2017-02-14 10:35:22 500

原创 Python函数与函数式编程

函数进行结构化的一种编程方法,是重要的代码组织和复用手段,能节省空间和保持一致性。参数位置参数(位置参数必须以在被调用函数中定义的准确顺序来传递)关键字参数(关键字参数必须位于位置参数之后)参数组(可变长度的参数)func(*tuple_grp_nonkw_args, **dict_grp_kw_args)*tuple_grp_nonkw_args是以元组形式体现的非关键字参数组**dic

2017-02-14 10:34:41 609

原创 Python错误和异常

错误: - 语法 - 逻辑异常: 因为程序出现了错误而在正常控制流以外采取的行为。 - 引起异常发生的错误 - 检测(和采取可能的措施)运行时管理错误的能力Python中的异常BaseExceptionKeyboardInterruptSystemExitException(all other current build-in exceptions)例子:NameError:

2017-02-13 17:19:40 808

原创 Python文件

文件内建函数内建函数open()file_object = open(file_name, access_mode='r', buffering=-1)工厂函数file()open() 和 file() 函数具有相同得功能,可以任意替换。Python的文件模式 模式 说明 r 只读模式 w 只写模式。创建新文件(删除同名的任何文件) a 附加到现有文件(如果文件不存在则

2017-02-13 17:18:58 491

原创 Python生成器与生成器表达式

生成器要创建一个生成器,只需要将函数中的return替换为yield即可:def squares(n=10): print 'Generating squares from 1 to %d' % (n**2) for i in xrange(1, n+1): yield i ** 2调用生成器时,没有任何代码会即刻执行, 只有从该生成器中请求元素的时候,它才开始执行

2017-02-13 17:17:52 861

原创 Python列表解析(列表推导式)

列表解析——用来动态地创建列表[expr for iter_var in iterable if cond_expr]例子一:map(lambda x: x**2, range(6))[0, 1, 4, 9, 16, 25][x**2 for x in range(6)][0, 1, 4, 9, 16, 25]列表解析式可以取代内建的map()函数以及lambda,而且++效率更高++。例子二:se

2017-02-13 17:16:58 12304 1

原创 Python迭代器和iter()函数

使用序列for i in seq: do_something_to(i)字典字典的迭代器会遍历它的键。legends = {...}for eachLegend in legends: print '...' % eachLegend #keys print '...' % legends[eachLegend] #values文件文件对象生成的迭代器会自动

2017-02-13 17:15:53 932

原创 Python映射类型:字典

哈希映射或者相连数组{key:value, key:value}keys和values方法分别用于获取键和值的列表。++虽然键值对没有特定的顺序,但这两个函数会以相同的顺序输出键和值。++从序列类型创建字典mapping = {}for key, value in zip(key_list, value_list): mapping[key] = valuedict类型函数直接处理二元元组

2017-02-13 17:15:13 1062

原创 拷贝Python对象、浅拷贝和深拷贝

Python中,对象赋值实际上时简单的对象引用。对一个对象进行 ++浅拷贝++ 其实是新创建了一个类型跟原对象一样,其内容是原来对象元素的引用。序列类型对象的浅拷贝是默认类型拷贝,并可以通过以下几种方式实施:完全切片操作 [:]利用工厂函数,比如list()、dict() 等使用copy()模块的copy函数完全拷贝或者说 ++深拷贝++ ,创建一个新的容器对象,包含原有对象元素(引用)

2017-02-13 17:13:51 374

原创 Python元组 vs 列表

不可变容器元组:数据传给一个不了解的API时,可以确定我们的数据不会被修改。tuple() 函数。同样的,操作从一个函数返回的元组,可以通过内建 list() 函数把它转换成一个列表。如,管理动态数据集合。通过内建的 list() 和 tuple() 转换函数,可以非常轻松的在两者之间进行转换。元组拆包如果对元组型变量表达式进行赋值,Python就会尝试将等号右侧的值进行拆包。tup = (1,

2017-02-13 17:12:41 526

原创 Python序列——列表

列表是能保留任意数目的Python对象的灵活的容器。赋值访问更新(append())删除(del、pop())序列类型操作符切片([]和[:])成员关系操作(in, not in)连接关系符(+)extend() 方法可代替连接操作符把一个列表的内容添加到另一个中去。注: 使用 extend() 方法比连接操作的一个优点是它实际上是把新列表添加到了原有列表里面,而不是像连接操作符那

2017-02-13 17:11:59 708

原创 Python序列——字符串

知识点一: 连接操作符(+)对于字符串来说,这个操作不如把所有得子字符串放到一个列表或可迭代对象中,然后调用一个join方法来把所有的内容连接在一起节约内存例:' '.join(('I', 'love', 'U'))类似的,推荐使用列表类型的extend()方法来把两个或者多个列表对象合并。知识点二: 序列类型函数len()返回字符串的字符数max() and min()返回最大或最小的字符(按照A

2017-02-13 17:10:06 676

原创 Python数字

数字类型Python支持五种基本数字类型,其中有三种是整数类型。有符号整数int长整型long (相当于Java里的BigInteger)布尔型bool浮点型float复数complex数字功能函数函数int()直接截去小数部分(返回值为整型)。函数floor()得到最接近原数但小于原数得整型(返回值为浮点型)。函数round()得到最接近原数得整型(返回值为浮点型)。

2017-02-13 17:09:26 413

原创 Python标准类型分类

存储模型 分类 Python类型 标量/原子类型 数值,字符串 容器类型 列表、元组、字典更新模型 分类 Python类型 可变类型 列表、字典 不可变类型 数字、字符串、元组访问模型 分类 Python类型 直接访问 数字 顺序访问 字符串、列表、元组 映射访问 字典小结 数据类型 存储模型 更新模型

2017-02-12 18:09:59 1107

原创 Python模块结构和布局

#!/usr/bin/env python #(1)起始行"this is a test moudle" #(2)模块文档import sys #(3)模块导入import osdebug = True #(4)全局变量定义class FooClass (object): "Foo class" #(5

2017-02-12 18:08:35 374

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除