Python
一个人的场域
目前主要做NLP、推荐算法相关工作
展开
-
lambda函数
参考: 链接:https://www.zhihu.com/question/20125256/answer/14058285简单来说,编程中提到的 lambda 表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。这一用法跟所谓 λ 演算(题目说明里的维基链接)的关系,有点像原子弹和质能方程的关系,差别其实还是挺大的。不谈形式化的转载 2016-11-07 18:58:03 · 213 阅读 · 0 评论 -
python 的编码与解码
字符串编码常用类型:utf-8,gb2312,cp936,gbk等。python中,我们使用decode()和encode()来进行解码和编码在python中,使用unicode类型作为编码的基础类型。即 decode encodestr ---------> unicode --------->stru = u'中文' #转载 2016-08-23 18:54:12 · 709 阅读 · 0 评论 -
Python日期时间函数
1. 日期输出格式化 datetime => stringimport datetimenow = datetime.datetime.now()now.strftime('%Y-%m-%d %H:%M:%S') 输出'2015-04-07 19:11:21'strftime是datetime类的实例方法。 2. 日期输出格式化 string => datetim转载 2016-12-06 14:24:52 · 309 阅读 · 0 评论 -
Python 语法积累
1. 字符串前加 r 表示不处理转义字符,即不转义。 print(r'\taa') ------'\taa'原创 2016-07-20 10:33:34 · 658 阅读 · 0 评论 -
python Execept处理方式
如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序:12345678try: 语句1 语句2 . . 语句Nexcept .........: do something .......但是你并不知道"语句原创 2016-12-22 17:57:40 · 700 阅读 · 0 评论 -
pandas DataFrame操作
pandas 处理格式化数据的利器。 本文会不断更新1. DataFram1.1 使用字典构造>>> import pandas as pd>>> d = {'doc':['txt1'], 'nid':[100]}>>> df = pd.DataFrame(data=d, columns=('nid', 'doc'))>>> df nid doc0 100 txt1>>>原创 2017-03-29 18:10:20 · 4076 阅读 · 0 评论 -
pandas read_csv 错误: pandas.parser.CParserError: Error tokenizing data. C error
今天panda.read_csv时遇到以下错误: File "/root/anaconda2/lib/python2.7/site-packages/pandas/io/parsers.py", line 1213, in read data = self._reader.read(nrows) File "pandas/parser.pyx", line 766, in pandas原创 2017-03-31 19:16:51 · 25423 阅读 · 0 评论 -
python format 在sql中对 string 和 int 类型的变化
今天在使用format拼sql语句时遇到一下问题:>>> s = '12345'>>> q0 = "select nid from news_simhash where first_16={0}">>> q1 = "select nid from news_simhash where first_16='{0}'">>> from doc_process import get_postgred原创 2017-03-16 12:17:05 · 1579 阅读 · 0 评论 -
python Manager对象增加进程
问题:启动一个python进程,ps发现还有多个额外进程 说明: 一个multiprocessing.Manager对象会控制一个服务器进程,其他进程可以通过代理的方式来访问这个服务器进程。举例: test_manager.py :from multiprocessing import Managerimport timem1 = Manager()m2 = Manage原创 2017-03-16 17:05:22 · 1489 阅读 · 0 评论 -
Python sort系列
list排序1. 基础排序>>> sorted([5, 2, 3, 1, 4])[1, 2, 3, 4, 5] 也可以直接使用list的sort,这是原list会被修改: >>> a = [5,3,2,1,4]>>> a.sort()>>> a[1, 2, 3, 4, 5]2)key参数/函数从python2.4开始,list.sort()和sorted(原创 2016-07-22 18:39:32 · 697 阅读 · 0 评论 -
python 序列化与反序列化
参考:http://www.huxiusong.com/?p=297本文目录为:1、什么是序列化2、Python序列化过程3、Python反序列化过程4、Python json序列化和反序列全文内容为:1、什么是序列化程序运行的过程中,所有变量都是在内存中操作的,当程序一旦执行完毕,结束退出后,变量占有的内存就被操作系统回收了。因此我们需要将某些数据持久转载 2016-10-11 11:04:31 · 647 阅读 · 0 评论 -
python Manager 之dict KeyError问题
程序需要多进程见共享内存,使用了Manager的dict。最初代码如下:from multiprocessing import Process, Managerd = Manager().dict()d2 = {}def f(): d['a1'] = {} d['a1']['a2'] = 11 print d['a1']['a2']if __name__ =原创 2016-10-10 16:34:25 · 3475 阅读 · 0 评论 -
gensim:No module named queue
在 OS X Yosemite系统上安装gensim时,遇到如下问题: File "/Users/briantom/Downloads/gensim-0.12.1/gensim/summarization/__init__.py", line 4, in from .keywords import keywords File "/Users/briantom/Dow原创 2016-07-20 23:21:51 · 7482 阅读 · 0 评论 -
postgre 执行execute参数为元组
sql = "select title,content,nid from newslist_v2 where nid in (%s)"conn, cursor = get_postgredb()cursor.execute(sql, [ads_str])报错: psycopg2.DataError: invalid input syntax for integer: .......原创 2016-08-16 10:57:32 · 2677 阅读 · 0 评论 -
Python jiba 分词
特点1,支持三种分词模式: a,精确模式,试图将句子最精确地切开,适合文本分析; b,全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义; c,搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。2,支持繁体分词3,支持自定义词典算法实现:基于Trie树结构原创 2016-07-17 10:40:18 · 3333 阅读 · 0 评论 -
python 判断字符串
python中提供许多的内建函数,而这些函数可以方便的对字符串容的判断,下面主要讲解以下的判断,既然是判断那么结果肯定返回的是bool值;x为一个字符串x.isalnum() #判断是否是数字或者是字母x.isalpha() #判断字符串第一个是否是字母x.isdigit() #判断字符是否是数字组成x.islower() #判断字符中是否是小写字母(字符串中可以包含数字,返回为tru转载 2016-08-16 18:13:25 · 1052 阅读 · 0 评论 -
python 文件操作
python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块。得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()返回指定目录下的所有文件和目录名:os.listdir()函数用来删除一个文件:os.remove()删除多个目录:os.removedirs(r“c:\python”)检验给出的路径是否是一转载 2016-08-09 18:32:07 · 332 阅读 · 0 评论 -
关于协程的初步理解
参考 http://blog.csdn.net/gzlaiyonghao/article/details/5397038协程,又称微线程和纤程等,据说源于 Simula 和 Modula-2 语言(我没有深究,有错请指正),现代编程语言基本上都有支持,比如 Lua、ruby 和最新的 Google Go,当然也还有最近很让我惊艳的 falcon。协程是用户空间线程,操作系统其存在一无所知,转载 2016-08-31 14:00:58 · 362 阅读 · 0 评论 -
python 函数参数传递的问题
Python中函数的参数传递问题,函数参数的传递往往是一个难以理解的概念,记得在C语言中有一个经典的例子如下所示:点击(此处)折叠或打开int swap(int a,int b){ int temp; temp = a; a = b; b = temp; return 0;转载 2016-09-12 11:41:02 · 359 阅读 · 0 评论 -
python装饰器详解
完全参考自 https://segmentfault.com/a/1190000000632572。 讲的很详细之前用python简单写了一下斐波那契数列的递归实现(如下),发现运行速度很慢。def fib_direct(n): assert n > 0, 'invalid n' if n 3: return 1 else:转载 2016-09-01 11:46:21 · 293 阅读 · 0 评论 -
关于python协程与异步举例
写了几个接口,也就接触到了python的异步。python的协程使用异步实现的(说法不知道准不准确),所以直接使用协程来做,看的很多例子也是这么干的先看代码:import jsonimport tornadoimport tornado.webfrom tornado import genfrom tornado.options import define, optionsd原创 2016-09-01 11:53:45 · 683 阅读 · 0 评论 -
requests 的BadStatusLine问题及tornado.web.RequestHandler部分接口
BadStatusLine 错误 使用request的get时出现BadStatusLine错误,初步确定是因为参数过长引起的;但是换了post以后还是出错。 曲折的最终发现是因为使用post的参数params是给url中指定参数使用的,要将参数放到body中,post需要使用参数data指定。response = resquests.post(url, data = dat原创 2016-08-25 11:36:44 · 1754 阅读 · 0 评论 -
python 多进程共享数据的读与写
1. 父进程向子进程传参1.1python通常的数据结构可以传给子进程读,但子进程写无效:from multiprocessing import Pool, Managerdef chid_proc(test_dict, i): print '{} process, before modify: {}'.format(i, test_dict) test_dict[i] = i *原创 2017-07-05 14:32:49 · 2454 阅读 · 0 评论