`
风雪涟漪
  • 浏览: 506920 次
  • 性别: Icon_minigender_1
  • 来自: 大连->北京
博客专栏
952ab666-b589-3ca9-8be6-3772bb8d36d4
搜索引擎基础(Search...
浏览量:9007
Ae468720-c1b2-3218-bad0-65e2f3d5477e
SEO策略
浏览量:18385
社区版块
存档分类
最新评论
文章列表
经常需要把几个字符串进行连接。 1.使用join方法。   largeString = ''.join(pieces)   2.用格式化字符串的方法。   largeString = '%s%s something %s yet more' % (small1, small2, small3)    
一般来说,字符串处理都需要空格 有三个方法处理来处理字符串,lstrip,rstrip,strip。   x = ' hej ' print '|', x.lstrip( ), '|', x.rstrip( ), '|', x.strip( ), '|' | hej | hej | hej |    
编程中经常需要对齐字符串:left,right,center print '|', 'hej'.ljust(20), '|', 'hej'.rjust(20), '|', 'hej'.center(20), '|' | hej | hej | hej |    
要判断一个对象是否是字符串可以使用如下方法 def isAsString(anobj) return isinstance(anobj,basestring)    
字符和ASCII或Unicode码的转换 1.可以使用ord和chr内置函数 print ord('a') 97 print chr(97) a 2.ord也支持Unicode码。反之使用unichr print ord(u'\u2020') 8224 print repr(unichr(8224)) u'\u2020'            
1.把字符串转为list str="fengxuelianyi" strList=list(str) 2.不需要创建list,可以直接使用for循环 for c in thestring: do_something_with(c) 3.也可以使用for子句 results = [do_something_with(c) for c in thestring] 4.也可以使用map函数 results = map(do_something, thestring)        
  在语句生命周期的下一步就是把一个SQL查询放入一个可执行的计划中。这个步骤有许多子步骤:解析,预处理并且优化。在这个过程中任意一点抛出错误(比如语法错误)。在这我们不会列出MySQL内部机制。因此我们可以更自由的说一些别的,如单独的描述其中的一些步骤,虽然它们可能有效地全部或者部分的组合在一起。我们的目标就是帮助你理解MySQL执行语句的过程,这样能写出更好的语句。   解析和预处理 开始MySQL解析器会把一个语句分成一些token,并创建一个“解析树”。解析器使用MySQL语法来解释和校验这个语句。它必须确保这些token有效并且顺序正确,还有它会检查一些如字符串双引号没有结束的 ...
在解析一个查询之前,如果缓存开启,MySQL要检查它的缓存。这个操作是一个区分大小写的hash查找。在缓存中,如果两个相似的查询哪怕是一个单字节不一样,也不回匹配,并且这个查询就会到下一个阶段。   如果MySQL在查询缓存中找到一个匹配,在返回已经缓存的查询语句之前,必须要校验权限。因为MySQL已经存储了已缓存语句表的信息。所以这一步是可行的,就不需要解析查询语句。如果权限OK,MySQL从缓存中获取结果,并且发送给客户端,跳过了其他语句执行的过程了。这个查询语句就不被解析,优化或者执行。 在下一章会详细说到。
MySQL 客户端/服务端 协议 虽然你不必明白MySQL客户端/服务端的协议的细节,但是你必须明白在更高一层它的工作方式。协议是半双工的。意思就是在任意的时间内,MySQL服务端既可以发送或者接受消息,但是不能同时。也意味着 ...
如果你想从MySQL服务器获得很高的性能,建议你花费一定的时间学习MySQL是如何优化的以及语句的执行过程。一旦你理解了这些,大部分语句优化都是从基本概念中得到解决方案,并且语句优化变为一个逻辑过程。   如下的图说明了MySQL执行语句的过程。   下面的就把流程说下 客户端发送一个SQL语句到服务器。 服务器要检查缓存。如果找到缓存,就会从缓存中返回结果。如果没找到,就到下一步。 服务器解析,预处理并且优化SQL到一个语句执行计划中。 语句执行引擎通过调用存储引擎API执行这个语句计划。 服务器发送结果到客户端。 每个步骤都有额外的复杂度,我们会在以后的章节进行介绍。 ...
分解JOIN查询 许多高性能的网站都分解了JOIN查询。你可以用查询多张单独的表的方法来替代多表JOIN查询,并且之后在应用程序执行这个JOIN.举个例子,   mysql> SELECT * FROM tag -> JOIN tag_post ON tag_post.tag_id=tag.id -> JOIN post ON tag_post.post_id=post.id -> WHERE tag.tag='mysql'   你可以使用如下语句替换 mysql> SELECT * FROM tag WHERE tag='mysql'; mys ...
拆分一个查询语句 另一个分解查询的方法是分步解决。本质上来说是相同的,但是不一样的是,运行较小的数据块,这样会影响较少的行。   在没有比删除旧数据更好的例子了。删除旧数据需要删除大量的数据,并且如果用一个大语句那么做的话会导致长时间锁定太多的行,写满了事物日志,独占的资源,并且阻塞了一些语句。拆分这个DELETE语句并且使用数量合适的删除语句可以提高性能,并且当一个语句被复制也会降低复制的延迟。举个例子。。   mysql> DELETE FROM messages WHERE created < DATE_SUB(NOW( ),INTERVAL 3 MONTH) ...
当开始优化有问题的查询语句的时候,你的目标是找到一个合适的方法来得到期望的结果-但是并不是一定要从MySQL返回相同的结果集。有的时候可以把查询语句转换成另一种方式来获得更好的性能。如果那样优化带来了效果的提 ...
之所以叫高级,是因为比普通的选择控件多了一点点功能。。。 好久没有写表现层的东东了。项目经常会用选取时间范围的东东,所以就花了点儿时间写了一个jQuery的插件。。闲话少说 上图。。。     此组件的适用范围如下: 1.日期范围的查询报表。 2.可以作为表单提交。     实际使用截图          现有版本更新为0.3 版本更新信息如下: 0.2v:  1.增加国际化功能 2.增加隐藏表单方便提交 3.修复CSS下拉菜单位置的BUG   03v:  1.增加自定义排序  2.增加日期的选中  3.代码的重构   代码在附件中 下 ...
运算符 运算符对一个或两个值(也可能是变量),进行一个运算并且返回一个值。让我们看看一个使用运算符的例子,主要是为了明白运算符的概念。     >>> 1 + 2 3     上面的代码有四点要说明   +是个运算符 运算符是个加法运算 输入的值为1和2(输入值也可以叫做操作数) 结果是3 在运算中你可以把1,2直接替换为变量。在运算中也可以把结果存放在变量中。例子如下 >>> var a = 1; >>> var b = 2; >>> a + 1 2 >> ...
Global site tag (gtag.js) - Google Analytics