自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(111)
  • 收藏
  • 关注

原创 本人源码分享

Greasemonkey脚本分享:在线翻译 Online translate在线快速翻译 translate online quickly ....scrollbetter实现更好地滚动,即加大默认滚动步长达到更好浏览效果make better for browse web pagebetter for browse 163163 内面浏览优化,

2012-02-27 17:13:03 880

原创 Nginx、sphinx、MongoDB、Memcached、Trac 等资料集合

NginxNginx日志分析解决方案_L CHANGES_百度空间用python分析nginx的access日志 - 开发 - 水漫三楼Nginx日志分析工具webalizer - nginx, webalizer, vpsWetware » glTail – Visual Log AnalyzerNginx添加Mongodb GridFS模块 - 厚土常丰 - 51CTO技术博客sphinx

2012-02-27 16:51:31 1791

原创 Python 学习资料集合

研读站点python 中文网站导航/开源项目/技术博客/商业公司推介 - python.cn(news, jobs)python 语法分析首页 - Woodpecker Wiki for CPUGPython3.2中文手册 | Pyospython 下载你可以在老王python里寻觅python3.X的中文资料(会持续更新)一些有用的Python函式庫列表 | 程式設計 遇上 小提琴Documen

2012-02-27 16:38:21 1674

转载 Python Signal(信号) 异步系统事件

信号的概念信号(signal)--     进程之间通讯的方式,是一种软件中断。一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。几个常用信号:SIGINT     终止进程  中断进程  (control+c)SIGTERM   终止进程     软件终止信号SIGKILL   终止进程     杀死进程SIGALRM 闹钟信号 进程结束信号 SIGTE

2011-12-24 17:13:47 18120 1

转载 Python通过signal可传递的信号列表

Signal Description SIGABRT 由调用abort函数产生,进程非正常退出 SIGALRM 用alarm函数设置的timer超时或setitimer函数设置的interval timer超时 SIGBUS 某种特定的硬件异常,通常由内存访问引起 SIGCANCEL 由Solaris Thread Library内部使用,通常不会使用 SIGCHLD 进程Te

2011-12-24 16:34:05 1592

原创 Python 正则高级运用

常用函数match()       决定 RE 是否在字符串刚开始的位置匹配search()       扫描字符串,找到这个 RE 匹配的位置findall()       找到 RE 匹配的所有子串,并把它们作为一个列表返回finditer()   找到 RE 匹配的所有子串,并把它们作为一个迭代器返回 修饰符:上面函数第三个参数DOTALL, S     使 .

2011-12-20 19:25:53 687

原创 Python 一些特别函数 __getitem__ __getattr__

Python 内置的一些函数,通过重载它们,可以定制自己想要的功能。特别说明一下包含 item 类的函数是通过下标[]操作字典的,包含 attr 类函数是通过 . 操作属性的。class A(object): def __init__(self, *args, **kwargs): print 'call func init' self.item

2011-12-20 19:10:16 5250

原创 Python yield assert with 关键字

1. yield 关键字包含了关键字"yield"的函数就不是普通的函数。当含有这个关键字的函数被调用的时候,这个函数在遇到yield的时候会停止运行,并且返回一个迭代器(iterator)。每次请求一个值,就会执行生成的代码。直到遇到一个yield或者return。>>> def f():... i = 0;... while i < 10:...

2011-12-20 17:10:39 2081

转载 Python OrderedDict使用

Python中的字典对象可以以“键:值”的方式存取数据。OrderedDict是它的一个子类,实现了对字典对象中元素的排序。比如下面比较了两种方式的不同:mport collectionsprint 'Regular dictionary:'d={}d['a']='A'd['b']='B'd['c']='C'for k,v in d.items(): print k,v

2011-12-20 16:25:51 57849 2

转载 Python deque用法介绍

Python的collections中有一个deque,这个对象类似于list列表,不过你可以操作它的“两端”。比如下面的例子:import collectionsd=collections.deque('abcdefg')print 'Deque:',dprint 'Length:',len(d)print 'Left end:',d[0]print 'Right end:',d[

2011-12-20 16:21:13 55683 1

转载 Python defaultdict

标准的字典对象包含一个setdefault方法,这个方法可以设置一个缺省值,当你通过字典对象的key取value的时候,如果找不到对应的key就返回这个缺省值。我们今天说的这个defaultdict方法可以在集合容器初始化的时候设置缺省值。比如下面的代码:import collectionsdef default_factory(): return 'default value'd

2011-12-20 16:17:15 1750

转载 Python bisect

Python 中的bisect用于操作排序的数组,比如你可以在向一个数组插入数据的同时进行排序。下面的代码演示了如何进行操作:import bisectimport randomrandom.seed(1)print('New pos contents')print('-----------------')l=[]for i in range(1,15): r=rando

2011-12-20 16:14:27 1009

转载 Queue 队列的使用

Python 中的Queue实现了经典的先入先出队列,并且是线程安全的。同时在此基础上还提供了其它许多高级功能。我们先从经典的先入先出FIFO队列开始,看下面的代码:import Queueq=Queue.Queue()for i in range(5): q.put(i)while not q.empty(): print q.get(),其输出结果为:0 1 2

2011-12-20 16:11:37 604

转载 Python 编码整合

1. 网页抓取编码正确设置怎么避免UnicodeEncodeError: ‘ascii’ codec can’t…类似的错误?1、首先在py文件头部指定文件内容编码,例如:# coding: utf82、文件保存的时候要和py文件头部编码一致3、在用decode和encode的时候,一定要确认要转换的字符原编码是什么。例如:网页中都会指定编码(), 你在抓取这个网站并获取它

2011-12-20 15:51:37 899

转载 Python线程指南

推荐相关文章:使用 Python 进行线程编程   使用 Python 实现多进程转自http://www.cnblogs.com/huxi/archive/2010/06/26/1765808.html本文介绍了Python对于线程的支持,包括“学会”多线程编程需要掌握的基础以及Python两个线程标准库的完整介绍及使用示例。注意:本文基于Python2.4完成,

2011-12-17 19:09:14 693

原创 greasemonkey 之 36kr.com 网站简洁单屏显示,滚动优化,支持自动翻页

Greasemonkey 脚本安装地址:http://userscripts.org/scripts/show/118582// ==UserScript==// @name 36kr// @author liangguohuan// @email [email protected]// @description 36kr.com 网

2011-11-20 18:09:37 1050

原创 Ubuntu 主目录下 .bashrc 文件备份

export PATH="$PATH:/opt/lampp/bin:."alias cls="clear"alias vimconf="vim ~/.vimrc"alias myconf="vim ~/.bashrc"alias myconfnow="source ~/.bashrc"alias myconfview="cat ~/.bashrc | egrep 'alias [a-z]

2011-11-17 01:39:19 1201

原创 Ubuntu 用命令行快捷打开文件夹

#!/bin/bash#/media下目录有c,d,e,f,g盘,open c打开C盘,依此类推,如果输入完整路径,则打开特定文件夹# open dir fast# 取长度:len=`echo “$1”|awk '{print length($0)}'`# if 判断:if [[ "$1" =~ "abc" ]], bash才支持 [[ ,sh不行, 判断是否包含abc,不能用复制

2011-11-17 01:27:40 3260

原创 网站发布SHELL自动化

#!/bin/sh# 操作站点文件:移动E盘phpweb目录下的网站和相关Mysql数据到Linux下# 注意变量=两边不能有空格,正确格式:a="1", 错误格式:a = "1"# 注意判断空格,正确格式:[ "$1" = "--del" ],错误格式:[ "$1" = "--del" ]helpfun(){ echo "descript: 1)--add 操作:移动 /med

2011-11-17 01:18:59 555

原创 Linux Smart 解压文件

#!/bin/bash# 概要文件类型自动解压ftype=`file "$1"`case "$ftype" in "$1: Zip archive"*) if [ -z "$2" ]; then unzip "$1" else unzip "$1" -d "$2" fi ;

2011-11-17 01:15:57 460

原创 目录递归和相对路径函数

获取两个文件相对路径,例如:$a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php';计算出 $b 相对于 $a 的相对路径应该是 ../../c/d方法一:function getRelativePath($a, $b) { for($i=0;$i<strlen($a);$i++) { if($a{$i} !

2011-11-17 01:03:25 580

原创 nginx 配置各种框架转向

server {     listen       80;     server_name  localhost;      # doophp framework settings     if (!-f $request_filename) {         rewrite ^(.*)index\.php(.*) $1index.php;     }

2011-11-16 23:27:19 906

转载 工厂模式

/** * 最初在设计模式一书中,许多设计模式都鼓励使用松散耦合。要理解这个概念,让我们最好谈一下许多开发人员从事大型系统的艰苦历程。在更改一个代码片段时,就会发生问题,系统其他部分 —— 您曾认为完全不相关的部分中也有可能出现级联破坏。 * 该问题在于紧密耦合。系统某个部分中的函数和类严重依赖于系统的其他部分中函数和类的行为和结构。您需要一组模式,使这些类能够相互通信,但不希望将它们紧密绑定

2011-11-16 15:41:54 378

转载 策略模式

/** * 策略模式: * 问题的提出: * 在此模式中,算法是从复杂类提取的,因而可以方便地替换。例如,如果要更改搜索引擎中排列页的方法,则策略模式是一个不错的选择。思考一下搜索引擎的几个部分 —— 一部分遍历页面,一部分对每页排列,另一部分基于排列的结果排序。在复杂的示例中,这些部分都在同一个类中。通过使用策略* 模式,您可将排列部分放入另一个类中,以便更改页排列的方式,而不影响搜索引擎

2011-11-16 15:39:37 394

转载 观察者模式

/** * 问题的提出: * 观察者模式为您提供了避免组件之间紧密耦合的另一种方法。该模式非常简单:一个对象通过添加一个方法(该方法允许另一个对象,即观察者 注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象无关。结果是对 * 象可以相互对话,而不必了解原因。 * 问题的解决: * 呵呵,上面还是抄的,看不懂没关

2011-11-16 15:35:21 418

转载 链表和数组区别

链表和数组一样是一种数据结构。  数组是将元素在内存中连续存放,由于每个元素占用内存相同,所以可以通过下标迅速访问数组中任何元素。但是如果要在数组中增加一个元素,需要移动大量元素,在内存中空出一个元素的空间,然后将要增加的元素放在其中。同样的道理,如果想删除一个元素,同样需要移动大量元素去填掉被移动的元素。     链表恰好相反,链表中的元素在内存中不是顺序存储的,而是通过存在元素中的

2011-11-16 15:27:27 938

转载 PHP 基础算法实现

//二分查找function binarySearch($arr, $low, $high, $k){ if ($low <= $high){ $mid = intval(($low+$high)/2); if ($arr[$mid] == $k){ return $mid; }elseif ($k < $arr[$mid]){ return binarySearch(

2011-11-16 14:59:51 424

转载 几种基本的排序算法原理

选择排序(Selection sort)、插入排序(Insertion sort)与冒泡排序(Bubble sort)這三个排序方式是初学排序所必须知道的三个基本排序方式,它们由于速度不快而不实用(时间复杂度都是O(n2)),然而它们排序的方式确实值得我们观察和探讨。  一、选择排序原理:将初始序列(A[0]~A[n-1])作为待排序序列,第一趟在待排序序列(A[0]~A[n-1])中找到最小

2011-11-16 14:55:33 712

转载 rc.local自启动学习

linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux启动过程将不再神秘。本文中假设inittab中设置的init tree为:/etc/rc.d/rc0.d/etc/rc.d/rc1.d/etc/rc.d/rc2.d/etc/rc.d/rc3.d/etc/rc.d/rc4.d/etc/rc.d/rc5.d/etc/rc.d/rc6.d

2011-11-12 14:23:40 489

转载 VIM命令大全(转载与整合)

虽然从很久前就开始用 VIM 了,但一直都是半调吊子,翻来覆去只用自己会的命令。最近为了提高书写代码的效率,还有 coding 时候的乐趣,又重新钻研了一下 VIM,发现了一篇很好的 VIM 入门的文章,原文是英文版的,我觉得非常适合 VIM 使用入门,所以翻译了过来。这里是简单的介绍了 VIM 的操作方式,并没有说为什么要用 VIM,如果你想知道答案可以去 Google,VIM 被誉为编辑器之神

2011-11-11 22:07:57 593

原创 Ubuntu 错误收集

LINUX分区加载不了修复命令sudo fsck /dev/sda1解决Ubuntu11.10重新引导问题sudo fdisk -l  #查看我ubuntu安装的位置(我的是sda6)sudo passwd root  #设置root密码不想的话可以sudo -i来获取最高权限mount /dev/sda6 /mnt  #挂在ubuntu系统位置grub-insta

2011-10-18 11:29:17 865

转载 ubuntu 10.04 开 起 ssh telnet 服 务

开启 ssh 服务:sudo apt-get install openssh-serverUbuntu缺省安装了openssh-client,所以在这里就不安装了,如果你的系统没有安装的话,再用apt-get安装上即可。然后确认sshserver是否启动了:p

2011-10-18 09:11:34 1355

转载 Virtualbox虚拟机克隆

Vmware Workstation可以提供虚拟机的克隆,可以安装好虚拟机之后可以非常方便的复制一个虚拟机,这样在搭建多台虚拟机的环境下非常方便,无需一台台的安装系统,但是Virtualbox在图形界面下却没有这个功能。在VirtualBox的快速修复界面里,可以随时生成当前状态的备份。当生成了备份之后,会在Snapshots目录下创建一个新的VDI文件,之后对当前状态所做的一切操作都将针对最

2011-10-18 09:07:48 1208 1

转载 ubuntu 恢复已删除的文件(NTFS 格式的)

之前不小心误删 了一些文件 ntfs 格式的盘下的。主要是ntfsundelete 这个软件,我的ubuntu 10 是自带的 。df/dev/sda10             3327128   1883708   1274412  60% /home/dev

2011-10-12 07:42:58 2509

转载 不改变系统设置 全新安装Ubuntu

是重新安装还是升级系统呢? 每当一个新的Ubuntu版本发行时,每个Ubuntu用户通常都会面临这样的选择。重新安装或许更好,可是以前安装的程序和配置不就丢了么?如何在在保持系统现有配置的情况下全新安装Ubuntu的新版本呢?    注: dpkg命令后的参数前是两个减号“-

2011-10-12 01:00:27 645

转载 ubuntu10.04下修改开机画面

ubuntu10.04之前的版本开机画面用的是xsplash,而现在10.04用的是plymouth(Lucid use plymouth splash screen)。据说10.04用的plymouth能够加快开机速度。 开机画面所用的都放在/lib/plymouth文件夹下。

2011-10-11 02:37:09 778

转载 Linux 定期自动备份脚本

我们在网维工作中,常常要备份一些资料,虽然事情不复杂,但是很费时间的,我在这里分享一个 Linux 备份脚本,轻松自如的实现自动备份,并且可以保留N天备份的档案。这个脚本分为两个文件,一个是执行文件backup.sh,另一个是备份项目文件project.lst。#backup.sh-- 重要变量名 作用LogFile 日志文件SourceDir 需要备份的目录BakDir 备份至此

2011-10-10 23:29:59 527

转载 五种常见的PHP设计模式

工厂模式 最初在设计模式 一书中,许多设计模式都鼓励使用松散耦合。要理解这个概念,让我们最好谈一下许多开发人员从事大型系统的艰苦历程。在更改一个代码片段时,就会发生问题,系统其他部分 —— 您曾认为完全不相关的部分中也有可能出现级联破坏。该问题在于紧密耦合 。系统某个部分

2011-10-10 10:10:49 493

转载 SVN + Trac + Apache 完整安裝攻略

SVN + Trac + Apache 完整安裝攻略,而原本在 SVN 所欠缺的用戶及權限管理介面,也都可以由 Trac 的外掛程式來搞定,可謂兩全其美。本文章適合熟悉 SVN 但沒用個任何線上專案管理的人做為參考。請注意,本人使用的 Linux 是 CentOS 4.x

2011-10-10 10:02:31 833

转载 mongodb小结

用了一阵子mongodb,作一些小结,作为将来的参考。按照以往的习惯,先作一个总览,然后再挑出一些自己比较关注的几个点,作为珠玑,加以串联阐述。mongodb由C++写就,其名字来自humongous这个单词的中间部分,从名字可见其野心所在就是海量数据的处理。关于它的一个最简

2011-10-10 09:48:17 371

空空如也

空空如也

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

TA关注的人

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