摘要: 当重复一个正则表达式时,如用 a*,操作结果是尽可能多地匹配模式。当你试着匹配一对对称的定界符,如 HTML 标志中的尖括号。匹配单个 HTML 标志的模式不能正常工作,因为 .* 的本质是“贪婪”的>>> s = '<html><head><title>Title</title>'>>> len(s)32>>> print re.match('<.*>', s).span()(0, 32)>>> print re.match(&# 阅读全文
posted @ 2012-09-28 10:29 网恋被骗5元 阅读(19360) 评论(0) 推荐(0) 编辑
摘要: 相信很多pythoner都对python 3.0之前版本的编码问题恨之入骨,我也对这个问题恨到基因里面。有时候也真的想放弃这个3.0之前的版本,直接奔3.0,不仅是因为3.0之前的版本编码问题,还有它不支持多核计算。但3.0也有很多缺憾,就是库类跟不上。没办法,只能硬着头皮跟它干。 使用python一年多后,也总结了一些解决编码的方法。 1、乱码的编码 因为乱码基本上都不能用任何一种编码方式(“utf-8,gb18030”)去编码或解码,或者能utf-8编码,但不能gb18030编码;或者反过来。可程序要运行流畅怎么办?我想出了一套办法。 查了一下ASCII码表,发现ASCII... 阅读全文
posted @ 2012-09-26 17:33 网恋被骗5元 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 我们知道,MongoDB的索引是B-Tree结构的,和MySQL的索引非常类似。所以你应该听过这样的建议:创建索引的时候要考虑到sort操作,尽量把sort操作要用到的字段放到你的索引后面。但是有的情况下,这样做反而会使你的查询性能更低。问题比如我们进行下面这样的查询:db.collection.find({"country": "A"}).sort({"carsOwned": 1})查询条件是{“country”: “A”},按 carsOwned 字段的正序排序。所以索引就很好建了,直接建立 country , carsOwned 阅读全文
posted @ 2012-09-20 14:50 网恋被骗5元 阅读(1261) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.oschina.net/news/15319/evolution-of-a-python-programmer在综合资讯栏中看到这个帖子,觉得很有意思,转上来,最后面加上些自己的知识补遗~~~==========================================================================================本文是从 The Evolution of a Python Programmer 这篇文章翻译而来。不久前,在互联网上出现了一篇有趣的文章,讲的是对于同一个问题,不同层次的程序员编出的Phthon代 阅读全文
posted @ 2012-08-16 12:01 网恋被骗5元 阅读(622) 评论(0) 推荐(1) 编辑
摘要: http://linux.itwaka.com/Python/74333.html本文是从How to become a proficient Python programmer这篇文章翻译而来。这篇文章主要是对我收集的一些文章的摘要。因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章。我的总结主要集中在四个基本题目上:函数式编程,性能,测试,编码规范。如果一个程序员能将这四个方面的内容知识都吸收消化,那他/她不管怎样都会有巨大的收获。函数式编程命令式的编程风格已经成为事实上的标准。命令式编程的程序是由一些描述状态转变的语句组成。虽然有时候这种编程方式十分的有效, 阅读全文
posted @ 2012-08-16 11:44 网恋被骗5元 阅读(815) 评论(0) 推荐(2) 编辑
摘要: 由于python不支持多核,但系统支持多核,可以把一个python程序分割成几个python程序,然后由系统处理。 阅读全文
posted @ 2012-08-10 14:19 网恋被骗5元 阅读(325) 评论(0) 推荐(0) 编辑
摘要: import timeclass Test(): def m(self, n): return ntest = Test()t1 = 0f = test.mfor j in xrange(10): sum = 0 t = time.time() for i in xrange(1000000): sum += f(i) t1 += time.time() - tt2 = 0for j in xrange(10): sum = 0 t = time.time() for i in xrange(1000000): sum += test.m(i) t2 += ... 阅读全文
posted @ 2012-08-06 11:24 网恋被骗5元 阅读(494) 评论(2) 推荐(1) 编辑
摘要: 先演示一段获取页面链接代码示例:#coding=utf-8from lxml import etreehtml = '''<html> <head> <meta name="content-type" content="text/html; charset=utf-8" /> <title>友情链接查询 - 站长工具</title> <!-- uRj0Ak8VLEPhjWhg3m9z4EjXJwc --> <meta name="Keyword 阅读全文
posted @ 2012-06-20 22:47 网恋被骗5元 阅读(40562) 评论(4) 推荐(4) 编辑
摘要: 预测行业的发展不能是凭空预测,而需要有根据。因为预测本身就是个不太准的事情,再没根据的话,那就更是浮云了。下面,我尝试从程序语言排行榜来解读一下IT的发展方向及Web的未来。《2012年6月份编程语言排行榜》全文见http://news.cnblogs.com/n/145783/先明确几个名词,net指的是网络,tcp/ip也好,还是物联网也好,都是net。web指的是WorldWideWeb,一种以html及其类似物为特点的网络应用。下面开始解读程序语言排行榜。(1)新型计算设备正在澎湃发展。C语言是系统语言,任何新的计算设备所支持的语言,C应该是最具优先考虑的。C语言的发展,能在一定程度上 阅读全文
posted @ 2012-06-17 21:42 网恋被骗5元 阅读(634) 评论(0) 推荐(0) 编辑
摘要: (译注:圣经记载:在远古的时候,人类都使用一种语言,全世界的人决定一起造一座通天的塔,就是巴别塔,后来被上帝知道了,上帝就让人们使用不同的语言,这个塔就没能造起来。 巴别塔不建自毁,与其说上帝的分化将人类的语言复杂化,不如说是人类自身心灵和谐不再的分崩离析。之所以后来有了翻译,不仅是为了加强人类之间的交流,更寄达了一种愿望,希望能以此消除人际的隔阂,获求来自心灵的和谐及慰藉。真正的译者,把握血脉,抚平创痕,通传天籁,开启心门。)这是我写的旋风式的编程语言简介 —— 我本来为亚马逊开发者杂志本月的期刊写的,但是发现我写的东西没法见人。首先,我偶尔一不小心口出脏话,或者对上帝不恭的话,所以在很官方 阅读全文
posted @ 2012-05-03 18:00 网恋被骗5元 阅读(640) 评论(1) 推荐(0) 编辑
摘要: 国内最大的NOSQL 聚集地:http://blog.nosqlfan.comredis命令全集:http://redis.io/commandsRedis命令参考简体中文版 v2.4.1(v2.6已经出来了,这个网站上也有):http://redis.readthedocs.org/en/2.4/Linux 下 Redis 安装详解:http://www.oschina.net/question/12_18065Redis内存存储结构分析:http://www.searchtb.com/2011/05/redis-storage.html这个网站使用了redis:www.gongju.com 阅读全文
posted @ 2012-04-29 11:20 网恋被骗5元 阅读(1486) 评论(0) 推荐(2) 编辑
摘要: 相信大家对众多选择判断语句都感到很厌烦,一大堆的if something:do something()else:do something, 或者是switch(something): case st1:do1 case st2:do2 ... case stn:don谁看了都会烦。不仅增加了巨大的代码量,而且不能很好地进行逻辑封装。 其实看到标题,高手就知道怎么做了。是的,就是用数组,列表或字典来替代这些选择判断语句。怎么处理呢? 比如我要对不同类型的书籍进行不同的处理,用 python 来实现 有个 read_book:方法 read_book(book): ret... 阅读全文
posted @ 2012-04-27 15:54 网恋被骗5元 阅读(1242) 评论(1) 推荐(1) 编辑
摘要: 对于网站访客行为和心理分析,国外有专门的研究。Jakob Nielsen,著名的Web可用性领域专家曾经有一个著名的0.1~1.0~10秒理论,用于评价网页速度算不算足够快的标准。作者引用如下,并给出作者的理解:— 0.1秒:访客在网页UI中的时间敏感下限。例子,你的网站某个操作比竞争对手快0.05秒,访客是感受不出来的。如果快了0.2秒,用户是可以感受到的。— 1.0秒:访客在网页UI中的流畅体验上限。例子,如果你的网页的某个操作的等待时间在0.1~1秒之间,用户在时间上感觉是“流畅”的,如果超过1.0秒,用户就会有明显等待感。— 10秒:访客在网页uI中的专注忍耐上限。例子,你的网站某个操 阅读全文
posted @ 2012-04-27 14:31 网恋被骗5元 阅读(884) 评论(1) 推荐(2) 编辑
摘要: 1、图片为什么会影响网站性能?它不是I/O读取吗? 答:我们说到有关图片影响性能的问题,一般来说都是出自于我们的大部分访问页面中图片往往比html代码占用的流量大,在同等网络带宽的情况下,图片传输需要的时间更长,由于传输需要花很大开销在建立连接上,这会延长用户client端与server端的http连接时长,这对于apache来说,并发性能肯定会下降,除非你的返回全部是静态的,那就可以把 httpd.conf 中的 KeepAlives 为 off ,这样可以减小连接处理时间,但是如果图片过多会导致建立的连接次数增多,同样消耗性能。另外我们提到的理论更多的是针对大型集群的案例,在这样的环境下. 阅读全文
posted @ 2012-04-27 11:52 网恋被骗5元 阅读(357) 评论(1) 推荐(2) 编辑
摘要: 转载请保留出处:俊麟 Michael’s blog (http://space.itpub.net/7311285/viewspace-97) 我在CERNET做过拨号接入平台的搭建,而后在Yahoo&3721从事过搜索引擎前端开发,又在MOP处理过大型社区猫扑大杂烩的架构升级等工作,同时自己接触和开发过不少大中型网站的模块,因此在大型网站应对高负载和并发的解决方案上有一些积累和经验,可以和大家一起探讨一下。 一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着.. 阅读全文
posted @ 2012-04-27 11:39 网恋被骗5元 阅读(2232) 评论(4) 推荐(2) 编辑
摘要: 什么是Google网页级别? 通常我们所说的PR值就是Google搜索引擎评价网站的核心因素全称为PageRank,这是由Google创始人开发出的一套用于网页评级的系统,是Google搜索排名算法中的一个组成部分,级别从1 ~10级,10级为满分, PR值越高说明该网页在搜索排名中的地位越重要,也就是说,在其他条件相同的情况下,PR值高的网站在Google搜索结果的排名中有优先权。网页别由此成为Google所有网络搜索工具的基础。 1.google网页级别概述: 当从网页A链接到网页B时,Google就认为“网页A投了网页投B一票”。Google根据网页的得票数评定其重要性。然而,除了考虑网 阅读全文
posted @ 2011-12-08 10:25 网恋被骗5元 阅读(698) 评论(0) 推荐(0) 编辑
摘要: from pymongo import * # 导包con = Connection(...) # 链接db = con.database # 链接数据库db.authenticate('username', 'password') # 登录db.drop_collection('users') #删除表db.logout() # 退出db.collection_names() # 查看所有表db.users.count() # 查询数量db.users.find_one({'name' : 'xiaoming'} 阅读全文
posted @ 2011-11-15 10:27 网恋被骗5元 阅读(10922) 评论(0) 推荐(2) 编辑
摘要: 如果不知道dict中是否有key的值,那么最好用dict.get(key)如果用dict[key]这个读取会报KeyError异常,根据不同情况用不同的方式 阅读全文
posted @ 2011-11-01 10:52 网恋被骗5元 阅读(29435) 评论(0) 推荐(0) 编辑
摘要: @修饰符:在模块或者类里面修饰函数或者方法。。只可以在模块或类定义层内对函数进行修饰,不允许修修饰一个类。 一个修饰符就是一个函数,它将被修饰的函数做为参数,并返回修饰后的同名函数或其它可调用的东西。例子:def s(fn): def saygood(*args): print "Good"*3 return fn(*args) return saygood@sdef u(a, b): print a**2+b**2if __name__ == "__main__": u(3, 4) u(3, 5)程序运行结果:GoodGoodGood25GoodGoo 阅读全文
posted @ 2011-10-20 15:54 网恋被骗5元 阅读(1416) 评论(0) 推荐(0) 编辑
摘要: 将属于一类的对象放在一起。如果一个函数操纵一个全局变量,那么两者最好都在类内作为特性和方法出现 不要让对象过于亲密。方法应该只关心自己实例的特性.让其他实例管理自己的状态. 要小心继承。尤其是多重继承. 简单就好。多数方法都应能在30秒内被读完.当考虑需要什么类以及类要有什么方法时,应该尝试下面的方法:(1)写下问题的描述(程序要做什么?),把所有的名词、动词和形容词加下划线。(2)对于所有名词,用作可能的类。(3)对于所有动词,用作可能的方法。(4)对于所有形容词,用作可能的特性。(5)把所有方法和特性分配到类。 阅读全文
posted @ 2011-10-16 15:20 网恋被骗5元 阅读(223) 评论(0) 推荐(0) 编辑