- 博客(49)
- 资源 (4)
- 收藏
- 关注
原创 Python yield 使用浅析(转)
您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 generator,以一个常见的编程题目来展示 yield 的概念。如何生成斐波那契數列斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到。用计算机程序输出斐波那契數列的前 N 个数是一
2014-08-18 22:16:28
898
原创 python扩展实现方法--python与c混和编程(转)
前言需要扩展Python语言的理由:创建Python扩展的步骤1. 创建应用程序代码2. 利用样板来包装代码a. 包含python的头文件b. 为每个模块的每一个函数增加一个型如PyObject* Module_func()的包装函数c. 为每个模块增加一个型如PyMethodDef ModuleMethods[]的数组 d. 增加模块初始化函数void initMethod()
2014-08-17 00:16:42
1058
转载 python 装饰器 与 面向切面编程(转)
今天来讨论一下装饰器。装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志、性能测试、事务处理等。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用。概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能。1. 装饰器入门1.1. 需求是怎么来的?装饰器的定义很是抽象,我们来看一个小例子。
2014-08-14 23:25:46
931
转载 Tornado编程实践建议(转)
最近看到很多人的一些开发经验。比如ruby和rails的使用者非常喜欢传道授业解惑,网上能看到的python的文章大多数在研究一些好玩的算法等等。事实上python在顶级软件团队的应用程度相当普遍,在严肃的生产环境中也十分让人放心。只是几乎所有的python framework都不擅长宣传自己,本人有一次一口气浏览了大部分python web框架的主页,没有一个框架主页有视频教程。相比rails甚
2014-08-12 01:26:07
812
原创 [转] Python中RE模块的应用
[转]Python中RE模块的应用 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编写新代码时尽量不要再使用 regex 模块,当然偶尔你还是可能在老代码里发现其踪影。 就其本质而言,正则表达式(
2014-08-11 17:37:34
900
原创 Shell parameter expansion
使用sh写一些小型的脚本会使工作更加简单,有部分内容可能大家都比较陌生(至少我是这样),就是变量有关的参数展开,下面就是一些简单的描述和用法,可以使代码更加简洁展开运算符替换运算${varname:-word} var exist & not null,return value ,else return word${varname:=word} var exist &
2014-07-12 02:23:04
1572
转载 Bash readline 使用技巧(转)
Bash readline 使用技巧很多人会用 Bash,但是很少有人知道 readline 是怎么回事。readline 是一个强大的库,只要使用了它的程序,都可以用同一个配置文件配置,而且用同样的方法操作命令行,让你可以方便的编辑命令行。使用 readline 的程序现在主要有 Bash, GDB,ftp 等。readline 付予这些程序强大的 Emacs 似的命令行编辑方式,你
2014-06-20 01:25:49
971
原创 Tcpdump的详细用法(转)
1. TCPDump介绍 TcpDump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。tcpdump就是一种免费的网络分析工具,尤其其提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具。tcpdump存在于基本的FreeB
2014-06-11 01:33:28
1434
原创 python 解析html基础 HTMLParser库,方法,及代码实例
HTMLParser, a simple lib as html/xhtml parser 官方解释: This module defines a class HTMLParser which serves as the basis for parsing text files formatted in HTML (HyperText
2014-05-28 23:22:00
1855
原创 gdb简介及简单使用(转自ibm)
使用 GDB 调试 Linux 软件GNU 调试器简介Linux 的大部分特色源自于 shell 的 GNU 调试器,也称作 gdb。gdb 可以让您查看程序的内部结构、打印变量值、设置断点,以及单步调试源代码。它是功能极其强大的工具,适用于修复程序代码中的问题。在本文中,David Seager 将尝试说明 gdb 有多棒,多实用。1评论:David Se
2014-05-27 02:38:07
984
原创 git命令速查
Git 常用命令速查表Git 常用命令速查表Git Cheat Sheet (#Version 0.1)创建版本库$ git clone #克隆远程版本库$ git init #初始化本地版本库修改和提交$ git status #查看状态$ git diff #查看变更内容$ git add . #跟踪所有改动过的文件$ git add
2014-05-26 01:37:43
1051
原创 python socket-framework 1
SocketServer TCPServer,UDPServer,UnixStreamServer,UnixDatagramServer
2014-05-23 00:05:03
1136
转载 如何高效使用Google
前言:多数人在使用Google搜索的过程是非常低效和无谓的,如果你只是输入几个关键词,然后按搜索按钮,你将是那些无法得到Google全部信息的用户,在这篇文章中,Google搜索专家迈克尔.米勒将向您展示如何更智能、更高效地进行Google的系列搜索。 Google是一个非常精密成熟的搜索引擎,但大多数的用户都没有能完全地利用到它的能力。一般人就是在Google的搜索框中输入一两个关键字,然
2014-05-18 00:36:46
858
转载 python beautifulsoup
http://rsj217.diandian.com/post/2012-11-01/40041235132Beautiful Soup 是用 Python 写的一个 HTML/XML 的解析器,它可以很好的处理不规范标记并生成剖析树。通常用来分析爬虫抓取的web文档。对于 不规则的 Html文档,也有很多的补全功能,节省了开发者的时间和精力。Beautiful Soup 的官方文
2014-05-03 02:57:14
864
原创 高效操作bash(转)
http://ahei.info/bash.htm我们在平常工作中大量使用linux, 而使用linux的过程中操作Bash更是非常之频繁, 所以怎样高效的操作Bash是一个非常重要的问题. 下面我结合自己的经验总结一下高效操作Bash的一些技巧.1 快捷键 1.1 注意 1.2 重度推荐 1.3 常用快捷键 1.4 高级快捷键 1.5 总结 2 历史扩展
2014-04-12 14:54:16
771
原创 五种常见php设计模式(转)
https://www.ibm.com/developerworks/cn/opensource/os-php-designptrns/设计模式 一书将设计模式引入软件社区,该书的作者是 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides Design(俗称 “四人帮”)。所介绍的设计模式背后的核心概念非常简单。经过多年的软件
2014-03-28 20:20:04
842
转载 一位ACMer过来人的心得
刻苦的训练我打算最后稍微提一下。主要说后者:什么是有效地训练? 我想说下我的理解。 很多ACMer入门的时候,都被告知:要多做题,做个500多道就变牛了。其实,这既不是充分条件、也不会是必要条件。 我觉得一般情况下,对于我们普通学校的大学生,各方面能力的差距不会太大,在这种情况下,训练和学习的方法尤为重要。 其实,500题仅仅是一个标
2014-03-20 22:28:20
737
原创 掌控我们手中的bash!
edit commandCtrl + a :移到命令行首 Ctrl + e :移到命令行尾Ctrl + f :按字符前移 Ctrl + b :按字符后移Alt + f :按单词前移 Alt + b :按单词后移Ctrl + xx:在命令行首和光标之间移动Ctrl + u :从光标处删除至命令行首Ctrl + k :从光标处删除至命令行尾Ctrl + w
2014-03-13 00:05:20
781
转载 用 Python 脚本实现对 Linux 服务器的监控
用 Python 脚本实现对 Linux 服务器的监控转自 http://www.ibm.com/developerworks/cn/linux/1312_caojh_pythonlinux/目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具比如 inotify-sync(文件系统安全监控软件)、 glances(资源监控工具)在实际工作中,Li
2014-03-06 14:40:37
1569
原创 Linux Hack ,use history
几个实用的Hack1.export HISTCONTROL=ignoredups 防止历史冲突自己不喜欢屏蔽冲突2.export HISTTIMEFORMAT='%F %T'history | more 内容包含时间 3.在commandline下使用可以搜索历史记录中的指定命令4.这个大家都知道 快速执行之前命令1.!! 2
2014-03-04 22:51:03
991
原创 一周前端学习历程 分享一下&求指教
最近用了1个星期的时间来学习html5,css3和js,学的当然不够系统,感触比较深的就是要想快速提高编程能力,多写代码和选择一本好书同等重要。 我身边有许许多多的人整天就抱着一门语言的教程,厚的如同字典,翻来覆去的看啊看(大一的时候我也曾经这样过),到头来问他们学的什么几乎都忘记了,不仅消耗了大量的时间,关键还做了无用功。 关于html和css的学习建议在http://w
2014-03-04 16:06:54
2153
原创 JavaScript与有限状态机(转)
JavaScript与有限状态机作者: 阮一峰转自http://www.ruanyifeng.com/blog/2013/09/finite-state_machine_for_javascript.html日期: 2013年9月 2日有限状态机(Finite-state machine)是一个非常有用的模型,可以模拟世界上大部分事物。简单说,它有三个特
2014-03-01 23:28:46
876
转载 淘宝前端工程师:国内WEB前端开发十日谈(转)
一直想写这篇“十日谈”,聊聊我对Web前端开发的体会,顺便解答下周围不少人的困惑和迷惘。我不打算聊太多技术,我想,通过技术的历练,得到的反思应当更重要。 我一直认为自己是“初级”前端开发工程师,一方面我入道尚浅,只有短短几年,另一方面我自知对技术的钻研并不深入,可能是由于环境的原因,当然最重要的是,我幸运的参与到互联网崛起的浪潮之巅。时势造就了一批技能薄弱但备受追捧的“弄潮者”,这在很大程度
2014-02-24 23:50:49
1379
转载 Vim简明教程【CoolShell】
你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。Vim the Six Billion Dollar editorBetter, Stronger, Faster.学习 vim 并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了,非常地难学,但是却不可思议地好用。我建议下面这
2014-02-22 20:24:26
743
原创 尾递归与Continuation(转)
这几天恰好和朋友谈起了递归,忽然发现不少朋友对于“尾递归”的概念比较模糊,网上搜索一番也没有发现讲解地完整详细的资料,于是写了这么一篇文章,权当一次互联网资料的补充。:P递归与尾递归关于递归操作,相信大家都已经不陌生。简单地说,一个函数直接或间接地调用自身,是为直接或间接递归。例如,我们可以使用递归来计算一个单向链表的长度:public class Node{ public
2014-02-20 21:17:50
840
转载 康托尔、哥德尔、图灵——永恒的金色对角线(转载)
我看到了它,却不敢相信它。——康托尔哥德尔的不完备性定理震撼了20世纪数学界的天空,其数学意义颠覆了希尔伯特的形式化数学的宏伟计划,其哲学意义直到21世纪的今天仍然不断被延伸到各个自然学科,深刻影响着人们的思维。图灵为了解决希尔伯特著名的第十问题而提出有效计算模型,进而作出了可计算理论和现代计算机的奠基性工作,著名的停机问题给出了机械计算模型的能力极限,其深刻的意义和漂
2014-02-19 21:16:41
1713
原创 色彩的数学规则(二)(转)
http://zhan.renren.com/mathart?gid=3602888498046783626&from=PubNewFeed&ref=hotnewsfeed&sfet=3731&fin=7&fid=24757543928&ff_id=671062753&platform=0&expose_time=1392813177一首曲子高八度唱,声音截然不同,旋律还是一样,单独的声音
2014-02-19 21:08:53
1516
原创 一篇写的比较简单的A*寻路算法(转)
http://www.raywenderlich.com/zh-hans/21503/a%E6%98%9F%E5%AF%BB%E8%B7%AF%E7%AE%97%E6%B3%95%E4%BB%8B%E7%BB%8D这篇文章还可以在这里找到 英语If you're new here, you may want to subscribe to myRSS feed or f
2014-02-17 20:08:33
2287
转载 学点Unicode又不会死——Unicode的流言终结者和编码大揭秘
学点Unicode又不会死——Unicode的流言终结者和编码大揭秘 2014-2-15 14:59|发布者: linux|查看数: 159|评论数: 1|赞0摘要: 如果你是一个生活在2003年的程序员,却不了解字符、字符集、编码和Unicode这些基础知识。那你可要小心了,要是被我抓到你,我会让你在潜水艇里剥六个月洋葱来惩罚你。这个邪恶的恐吓是Joel Spolsky在十年
2014-02-16 22:44:15
1098
转载 html5 canvas简单介绍(转)
http://www.ibm.com/developerworks/cn/web/wa-html5canvas/(原文链接)HTML5 是一个新兴标准,它正在以越来越快的速度替代久经考验的 HTML4。HTML5 是一个 W3C “工作草案” — 意味着它仍然处于开发阶段 — 它包含丰富的元素和属性,它们都支持现行的 HTML 4.01 版本规范。它还引入了几个新元素和属性,它们适用许多使
2014-02-15 22:30:20
1209
原创 opensuse 13.1 virtualbox error:This parameter must be a string or Unicode object
这个问题是一个bug,解决方法之一是在zypper中使用uninstall virtualbox,zypper in virtualbox-qt ,virtualbox-dev* 在 yast中把自己当前的用户加入到virtualusers用户组中,relogin即可(或者重启)
2014-02-15 00:52:19
1801
1
原创 html canvas demo
http://www.effectgames.com/demos/canvascycle/参考自http://developer.51cto.com/art/201107/276488_2.htm
2014-02-10 17:24:08
932
转载 linux常用的网络命令
转自http://www.cnblogs.com/hnrainll/archive/2011/10/12/2208436.html网络参数设置命令 所有时刻如果你想要做好自己的网络参数设置,包括IP参数、路由参数和无线网络等,就得要了解下面这些相关的命令才行。其中Route及ip这两条命令是比较重要的。当然,比较早期的用法,我们都是使用ifconfig的。? ifconfig:
2014-02-10 01:47:30
1485
转载 getchar()和EOF总结
大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition)第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getchar()的工作原理和EOF的用法。因此,感觉很有必要总结一下,不然,很多琐碎的知识点长时间过后就会淡忘的,只有写下来才是最好的方法。其实,g
2014-02-10 01:23:11
855
转载 linux c语言编程(转)
linux操作系统下c语言编程入门整理编写:007xiong原文:Hoyt等(一)目录介绍1)Linux程序设计入门--基础知识2)Linux程序设计入门--进程介绍3)Linux程序设计入门--文件操作4)Linux程序设计入门--时间概念5)Linux程序设计入门--信号处理6)Linux程序设计入门--消息管理7)Linux程序设计入门
2014-02-03 22:24:32
2096
43
原创 linux kernel(四)中断
//log interrupt fun static inline int __must_checkrequest_irq(unsigned int irq, //irq alloc interrupt number irq_handler_t handler, // a pointe
2014-02-03 01:58:25
1425
转载 寄存器ESP和EBP
原文: http://blog.youkuaiyun.com/zsJum/article/details/6117043一直对寄存器ESP和EBP的概念总是有些混淆,查看定义ESP是栈顶指针,EBP是存取堆栈指针。还是不能很透彻理解。之后借于一段汇编代码,总算是对两者有个比较清晰的理解。下面是按调用约定__stdcall 调用函数test(int p1,int p2)的汇编代码假设执行函数
2014-01-31 23:34:10
1001
原创 linux 命令 用到什么看什么 不断更新
cat /proc/cpuinfo查看物理CPU的个数#cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l 查看逻辑CPU的个数#cat /proc/cpuinfo | grep "processor" | wc -l 查看CPU是几核#cat /proc/cpuinfo | grep "cores"
2014-01-20 00:55:17
1289
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人