paip.性能跟踪profile原理与架构与本质-- python扫带java php
##背景
弄个个输入法音标转换atiEnPH工具,老是python性能不的上K,7k记录浏览过k要30分钟了.
##目标
分析一个程序的性能,最终都归结为回答4个基本的问题:
程序运行速度有多快?
运行速度瓶颈在哪儿?
程序使用了多少内存?
内存泄露...
分类:
编程语言 时间:
2014-04-28 10:46:41
阅读次数:
334
paip.元数据驱动的转换-读取文件行到个list理念 uapi java php python总结
#两个思路
1.思路如下:使用file_get_contents()获取txt文件的内容,然后通过explode()把获得的字符串转化为数组。获得数组长度可以使用count()函数
2.使用按照行读取api
在正则表达式中,有一个\n是newline的意思,又有一个\r是carri...
分类:
编程语言 时间:
2014-04-28 10:46:40
阅读次数:
304
前面对C++ 面向对象的基本了解和认识,下面来运用前面的基础知识,来实现一个简单的雇员工资管理系统,雇员分为2中,普通员工和管理者,两者工资和工作年限挂钩。具体参见下图:
具体实现参见下面的代码:
/*File : salarySystem.h
*Auth : sjin
*Date : 2014-04-27
*Mail : 413977243@qq.com
*/
#ifnde...
分类:
编程语言 时间:
2014-04-28 10:43:42
阅读次数:
401
Object.prototype.toString & typeof
Object.prototype.toString 获取某个对象属于哪种内置类型
typeof 得到某个对象的类型
区别:
举个例子:
var arr = new Array();
typeof(arr); //object
Object.prototype.toString.call(arr); //[Object Array]...
分类:
其他好文 时间:
2014-04-28 10:33:42
阅读次数:
279
6.2 Python作用域和命名空间
在介绍类之前,首先我想告诉你一些关于python作用域的规则。类的定义非常巧妙地运用了命名空间,你需要知道范围和命名空间的工作原理以能全面了解接下来发生的。 顺便说一下,关于这节讲到的知识对于任何优秀的python程序员非常有用。
让我们开始以一些定义开始。
命名空间(namespace)是一个从名称到对象的映射。大多命名空间目前用Python字典实现的...
分类:
编程语言 时间:
2014-04-28 10:31:42
阅读次数:
309
paip.utf-8,unicode编码的本质输出unicode文件原理 python
#别的语言,java php都是unicode,走十python不一样.
#enddef
#todo write to unicode encode
fileHandle = open ( r"c:\fmtSmpEnRst.txt", 'w',encoding="UTF-16"...
分类:
编程语言 时间:
2014-04-28 10:28:42
阅读次数:
374
代理模式的本质:控制对象访问
既然本质是控制对象访问,意思就是在访问者与原始对象之间加一个代理即可
同理,代理模式也可以通过继承原始类来实现,让访问者操作继承类,继承类来控制原始对象的访问
从而实现控制对象访问的目的
何时选用代理模式
1.需要为一个对象在不同的地址空间提供局部(重点)代表的时候,可以使用远程代理
2.需要按照需要创建开销很大的对象的时候,可以使用虚代理(即一个不完整的对象)
3.需要控制对原始对象的访问的时候,可以使用保护代理,上边即保护代理实例
4.需要在访问对象执行一些附加操作的时候,...
分类:
其他好文 时间:
2014-04-28 10:27:41
阅读次数:
253
http://acm.hdu.edu.cn/showproblem.php?pid=1595
大致题意:
给一个图,让输出从中删除任意一条边后所得最短路径中最长的。。
思路:
直接枚举每条边想必是不行的。其实有些边是不需要枚举的,因为删除它们并不影响起点到终点的最短路。起作用的边都是未删边前的最短路径上的边,删除它们最短距离肯定增大,只需在这些最短距离中求最大的即可。
记录最短路...
分类:
Web程序 时间:
2014-04-28 10:24:42
阅读次数:
393
php中奖概率算法,可用于刮刮卡,大转盘等抽奖算法。用法很简单,代码里有详细注释说明,一看就懂
<?php
/*
* 经典的概率算法,
* $proArr是一个预先设置的数组,
* 假设数组为:array(100,200,300,400),
* 开始是从1,1000 这个概率范围内筛选第一个数是否在他的出现概率范围之内,
* 如果不在,则将概率空间,也就是k的值减去刚刚的那个数字的概...
分类:
Web程序 时间:
2014-04-28 10:13:42
阅读次数:
390
1、思考问题
在某张表中,存在一个id列(整数),用户希望在添加记录的时候,该列从1开始,自动的增长,如何处理?
2、介绍
Oracle通过序列处理自动增长列。
(1) 可以为表中的列自动产生值
(2) 由用户创建数据库对象,并可由多个用户共享。
(3) 一般用于主键或唯一列
(4) 序列也是一种数据对象
3、定义序列
² 格式:
Create sequence 序列名
[...
分类:
数据库 时间:
2014-04-27 22:26:46
阅读次数:
325