代码改变世界

随笔分类 - Python

各种算法小集

2013-07-10 12:14 by 梁小白, 124 阅读, 收藏, 编辑
摘要:本人的数学细胞实在不发达,记忆力又差,一讲到算法就头疼。但现在满世界都要靠这个过关斩将。姑且记录一点点,学而时习之。1.删除字符串重复字符:#include #include #include int main() { int i,j; char s[]="aabbbbcccdd"; for(i=0;i<(int)strlen(s);i++){ for(j=i+1;j<(int)strlen(s);j++) if(s[i]==s[j]) s[j]=' '; } for(i=0;i<(int)strl... 阅读全文

常用正则表达式收集

2013-05-20 15:22 by 梁小白, 2221 阅读, 收藏, 编辑
摘要:一段时间不用,脑子就记不住了,把常用的正则表达式收集记录一下:UUID : [0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}例:ff9c7f59-3652-4510-bd0b-1d57d2fd3917纯数字: \d+例: topic=12345 阅读全文

python json.dumps 中的ensure_ascii 参数引起的中文编码问题

2013-02-19 11:21 by 梁小白, 32316 阅读, 收藏, 编辑
摘要:在使用json.dumps时要注意一个问题>>> import json>>> print json.dumps('中国')"\u4e2d\u56fd"输出的会是'中国' 中的ascii 字符码,而不是真正的中文。这是因为json.dumps 序列化时对中文默认使用的ascii编码.想输出真正的中文需要指定ensure_ascii=False:>>> import json>>> print json.dumps('中国')"\u4e2d\u56 阅读全文

关于使用Django admin模块插入中文时乱码的处理方法

2013-01-31 10:32 by 梁小白, 819 阅读, 收藏, 编辑
摘要:django的models在定义时并没有相关参数来约定数据库和表及表中字段的编码规则。所以一般情况下,使用manager.py syncdb创建的表均为latin-1编码,这种情况,当你使用admin模块在后台插入中文数据时,会出现乱码提示。 网上通常的资料是使用sql语句将相关的需要插入中文的字段改为utf-8编码。 这是一种办法,但是,当字段较多时会比较麻烦。 (可以用phpmyadmin等图形管理工具) 其实不用这么麻烦。 出现乱码的根本原因在于,数据库创建表的本身编码不支持utf-8字符,所以从根本上将所有表和字段创建为utf-8编码才是解决方法。 这个思路一方面期待django... 阅读全文

python 中json库的 对象转换问题

2013-01-21 13:02 by 梁小白, 15012 阅读, 收藏, 编辑
摘要:今天在使用python 中的json对象转换碰到一个问题 :接收一个post的json字符串:s={"username":"admin","password":"password","tenantid":""}使用python自带的json库import json>>> a=json.loads(s)Traceback (most recent call last): File "<stdin>", line 1, in &l 阅读全文

解决Eclipse +pydev 中python import 代码提示错误问题

2013-01-17 15:54 by 梁小白, 2742 阅读, 收藏, 编辑
摘要:我们在开发过程中经常会遇到,import packagename出错的问题,如下:这样的情况一般有两种:编译路径中无法找到此包编译器不识别此包,或者安装的包中确失某个模块。解决办法很简单了,安装正确的包,重启eclipse,实在不行,在项目属性编译器中强制加入包引用。一般就可以了不过今天碰到个特例:在用python 安装ZSI包的时候,安装正确,并且在命令行下已经可以import:然而在eclipse中死活不能生效. 折腾了好久.最后终于解决,原因如下: ZSI 默认会安装到/usr/local/lib/...下面,而一般的python库会安装到/usr/lib下面, 而在安装ZSI之间往往p 阅读全文

使用PYTHON ZSI 开发WebService

2013-01-17 10:27 by 梁小白, 408 阅读, 收藏, 编辑
摘要:最近几天调研了 djangorestframework, django-tastpie等REST框架,最终还是无法完全满足项目开发需要, 时间紧迫,看来只能使用WebService 来实现了。 Python 下的有名稳定据称是ZSI, 有点不明白,这个项目好几年不更新了,早的2004年,晚的也只到2007年。 用sudo apt-get install python-zsi 顺利安装.(需要再更新一下eclipse的python解释器以修正import 的错误) 为了安装pyxml ,需要先安装python-dev ,否则安装pyxml会报错. 使用Eclipse自带的Webserv... 阅读全文

JSON格式化工具推荐

2013-01-11 14:50 by 梁小白, 5423 阅读, 收藏, 编辑
摘要:JSON以其独特的简洁方便及与Javscript的无缝集成在WEB2.0时瓦风靡全球。不过做为开发者,当看到一段很长的未格式化的JSON代码时,你会不会感到头晕?{"meta": {"limit": 20, "next": "/api/v1/entry/?offset=20&limit=20&format=json", "offset": 0, "previous": null, "total_count": 43}, "obje 阅读全文

Python: 通过Inspect模块获取函数上下文信息.

2012-12-28 15:58 by 梁小白, 2241 阅读, 收藏, 编辑
摘要:今天在重构应用时,需要将一些通用调试信息集中在中间函数中打印。这就要求在中间函数中执行打印调试信息时输出上下文的信息,如调用的函数名之类。baidu到python的inspect.stack()模块可以实现,但是打印在控制台上的命令太乱,找了半天格式化工具也没找到,只好手动稍微格式化一下。[(<frame object at 0x7f3f005e9880>,'/home/lion/workspace/SmartOpenstack/SmartOpenstack/openstackapi.py', 16, 'restclient', ['logg 阅读全文