自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Everything should be made as simple as possible, but no simpler

  • 博客(11)
  • 资源 (6)
  • 收藏
  • 关注

原创 Python的不定参数

以一个*开始的参数,代表一个任意长的元组:>>> def mul(*arg):...     print arg... >>> mul(1,2,3,4,5,6,7,'hello','panfei')(1, 2, 3, 4, 5, 6, 7, 'hello', 'panfei') #一个元组>>>*********************************一个以**开始的参数,代表一个字典:>>> def mul2(**arg):...     print arg... >>> mul2(a=11,b=

2011-02-11 12:22:00 9160

原创 Python装饰器

<br />一颗语法糖——装饰器<br />理论不去管,只管能办事:<br /><br />1.  我要让一个函数在执行的时候,去做一些事情,比如,我要看看这些函数是不是有docstring,将这个功能拿出来,定义一个装饰器:<br />def showmedoc(func):<br />     if func.__doc__:<br />          print 'has doc'<br />     else:<br />          print 'no doc'<br />     re

2011-02-11 12:21:00 1024

原创 Python 切片操作

<br /><br />一点一点的去认识,总结:<br />首先需要明白,可迭代对象,按照正数索引(正序)是从0开始的,按照负数索引(逆序)是从-1开始的。<br />>>> astring = 'Hello world'<br />>>> astring[0:2]<br />'He'<br />>>> <br />可见,这种情况下,给切片操作一个起始位置,和一个终止位置,则显示从起始位置开始(包括起始位置)到终止位置(不包括终止位置)之间的内容;<br />在有负数索引的情况下,是类似的,只要确定终止位置

2011-02-11 12:21:00 2315

原创 Python元类

<br />背后有一大套的理论 !!管它呢!?理论能当饭吃吗?<br />先知道怎么用再说!<br /><br />记住:元类就是类的模板——太形象了了呀,霍霍。<br /><br />我要一大群的类都具有一中特点,我怎么给他们加上呢?模板模板吗,我从这个模板创建一群类不就OK了?那就需要元类了。霍霍》<br /><br />定义一个元类(就所一个类的模板!莫多想,还要记住这是类级别的,不是对象级别的!):<br />class MyMeta(type):<br />...     def __init__

2011-02-11 12:20:00 1066

原创 复合设计模式—MVC

这个东西无非就是模型-视图-控制器。还有什么——关系,更确切一点就是这三者之间的关系。 首先明确谁能和谁通信: 现在有一个播放器:我的视图上有按钮,当别人按了播放按钮的时候,这个信号应该传递到控制器,所以视图能向控制器传递信息;这个时候,控制器就应该调用模 式里的代码,去播放音乐,所以控制器能向模型传递信息;与此同时,控制器可能将播放按钮变成停止按钮,所以,控制器能向视图传递信息;当模型将音乐放...

2011-02-11 12:19:00 690

原创 插入排序C语言实现

<br /><br />关于插入排序其原理很简单,像起扑克牌一样。但是在实现上需要注意一些细节,下面用C语言来实现插入排序算法:<br />int main(){<br />int a[14]={100,20,32,23,56,48,23,14,56,74,147,99877,5142,36}; //一个有14个元素的数组<br />int i,k,cur; // 其中cur是指当前要插入的那个数字,显然我们需要从第二个数字开始插入<br />for(i=1;i<14;i++){<br />cur = a[

2011-02-11 12:17:00 643

原创 C语言实现几种常见排序算法

<br /><br />/*<br /> * worker.c<br /> *<br /> *  Created on: 2010-7-1<br /> *      Author: panfei<br /> */<br /><br />#include <stdio.h><br /><br />void swap (int *x, int *y)<br />{<br />    int temp;<br />    temp = *x; *x = *y; *y = temp;<br />}<br /><br

2011-02-11 12:16:00 525

原创 Linux共享内存

<br /><br /> 共享内存是最快的一种IPC方式,其大体的过程如下:<br />1:一个进程首先通过使用shmget来分配一个共享内存段,它返回一个标识符,其它进程通过这个标识符使用这个共享段;<br />2:使用shmat来装载,如果成功,返回装载的共享内存的地址;<br />3:用完之后,使用shmdt来卸载;<br />    控制和释放共享内存:<br />适用shmctl调用返回一个共享内存段的相关信息,并且能修改它。<br />第一个参数是共享内存段的id,<br />获取一个共享内存段

2011-02-11 12:15:00 619

翻译 Hbase数据模型

<br /><br />介绍:<br />                   BigTable数据模型和后来的HBase数据模型相似,因为后者是克隆的前者,这种数据模型适用于数据密集型的系统。从关系型数据库获得可伸缩性并不能通过简单地添加机器来完成,因为它的数据模型是基于单机架构的。比如,在两个表上的JOIN操作在内存中完成,并没有考虑数据可能会在其它机器上的可能性。那些提倡关系型分布式数据库的公司必须要做很多的重新设计来实现相应的功能,这也是为什么它们的许可费用那么高的原因。另一个选择是读写分离,最后的

2011-02-11 12:13:00 786

翻译 Hive数据操纵语言

修改Hive中的数据有两种主要的方式: 加载文件到表中 HIVE在加载数据到表中的时候并不作任何的转换。现在的加载操作只是纯的复制/移动操作,将数据文件移动到对应的hive表的位置。 load data [local] inpath 'filepath' [over

2011-02-11 12:13:00 2710 1

原创 Hadoop使用公平调度策略

<br /><br />前向hadoop提交的任务数越来越多, 任务的执行是按照FIFO的默认调度算法执行的,这样会造成一些任务,即使只有1,2个map或reduce,独占资源的现象,因此改为公平调度算法。cdh hadoop 0.20.2+320 的hadoop lib目录已经包含公平调度算法的包。如果没有应该从$HADOOP_HOME/contrib/fairscheduler目录下,把那个jar包(我在这里是hadoop-fairscheduler-0.20.2+320.jar)复制到lib目录下。然

2011-02-11 12:12:00 3744

ASGI 3.0规范中文版.pdf

ASGI规范 3.0;主要用于ASGI服务器的设计和开发提供基础协议规范,具体服务器实现有Django Daphne/Uvcorn这两个代表;现在Django 3 也直接集成了异步功能。

2019-12-20

Serious Python中文版.docx

Serious Python中文版(无关系数据库一章),希望对需要的同学有帮助。

2019-07-09

设计模式 书籍 程序设计

设计模式的经典巨著 参与写作的都是些牛人 哈

2009-03-13

Erlang programing

Erlang Programing Joe Armstrong

2008-11-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除