上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 59 下一页
  2013年6月8日
摘要: import win32clipboard as wimport win32condef getText():w.OpenClipboard()d = w.GetClipboardData(win32con.CF_TEXT)w.CloseClipboard()return ddef setText(aString):w.OpenClipboard()w.EmptyClipboard()w.SetClipboardData(win32con.CF_TEXT, aString)w.CloseClipboard() 阅读全文
posted @ 2013-06-08 17:58 一个人的天空@ 阅读(424) 评论(0) 推荐(0) 编辑
  2013年5月29日
摘要: 简介Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编写新代码时尽量不要再使用 regex 模块,当然偶尔你还是可能在老代码里发现其踪影。就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现。使用这个小型语言,你可以为想要匹配的相应字符串集指定规则;该字符串集可能包含英文语句、e-mail地址、TeX命令或任何你想搞定的东 西。然後你可 阅读全文
posted @ 2013-05-29 10:40 一个人的天空@ 阅读(356) 评论(0) 推荐(0) 编辑
  2013年5月24日
摘要: 单例模式:保证一个类仅有一个实例,并提供一个访问他的全局访问点。实现某个类只有一个实例的途径:1,让一个全局变量使得一个对象被访问,但是他不能防止外部实例化多个对象。2,让类自身保存他的唯一实例,这个类可以保证没有其他实例可以被创建。多线程时的单例模式:加锁-双重锁定饿汉式单例类:在类被加载时就将自己实例化(静态初始化)。其优点是躲避了多线程访问的安全性问题,缺点是提前占用系统资源。懒汉式单例类:在第一次被引用时,才将自己实例化。避免开始时占用系统资源,但是有多线程访问安全性问题。实例:#encoding=utf-8#单例模式def PrintInfo(info):# print uni... 阅读全文
posted @ 2013-05-24 18:13 一个人的天空@ 阅读(12949) 评论(1) 推荐(1) 编辑
摘要: SetConsoleCtrlHandler 处理控制台消息一、如何处理所有的控制台消息。 第一步,首先要安装一个事件钩子,也就是说要建立一个回调函数。调用Win32 API,原型如下:BOOL SetConsoleCtrlHandler(PHANDLER_ROUTINE HandlerRoutine, // 回调函数BOOL Add // 表示添加还是删除); 参数HandlerRoutine是一个指向函数的指针,原型如下:BOOL WINAPI HandlerRoutine(DWORD dwCtrlType // 控制事件类型); 所有的HandlerRoutine函数只有一个参数dw... 阅读全文
posted @ 2013-05-24 17:49 一个人的天空@ 阅读(560) 评论(0) 推荐(0) 编辑
摘要: 在网络上面我们用的IP都是数字加点(192.168.0.1)构成的,而在structin_addr结构中用的是32位的IP,我们上面那个32位IP(C0A80001)是的192.168.0.1为了转换我们可以使用下面两个函数 intinet_aton(constchar*cp,structin_addr*inp) char*inet_ntoa(structin_addrin) 函数里面a代表asciin代表network.第一个函数表示将a.b.c.d的IP转换为32位的IP,存储在inp指针里面.第二个是将32位IP转换为a.b.c.d的格式. 同样inet_addr也可以进行字符串到32位 阅读全文
posted @ 2013-05-24 17:48 一个人的天空@ 阅读(17149) 评论(0) 推荐(0) 编辑
  2013年5月20日
摘要: 添加步骤:1、进入设备管理器2、点下一步3、继续下一步4、继续往下走这样就可以添加一块虚拟网卡了。最后自己设置ip如果按照这个方法安装好后,右下角显示的小电脑图标上有感叹号,连接不上网, 那么你要手动设置IP地址就可以了,注意要设为同一网段就可以了 阅读全文
posted @ 2013-05-20 17:05 一个人的天空@ 阅读(446) 评论(0) 推荐(0) 编辑
摘要: MENUITEMINFO结构包含关于一个菜单项信息typedef struct tagMENUITEMINFO { UINT cbSize; UINT fMask; UINT fType; UINT fState; UINT wID; HMENU hSubMenu; HBITMAPhbmpChecked; HBITMAPhbmpUnchecked; DWORD dwItemData; LPTSTR dwTypeData; UINT cch;HBITMAPhbmpItem;} MENUITEMINFO, FAR *LPMENUITEMINFO;成员cbSize结构的大小,字节fMask检索或设置 阅读全文
posted @ 2013-05-20 15:18 一个人的天空@ 阅读(1866) 评论(0) 推荐(0) 编辑
  2013年5月17日
摘要: 最近在看《Python源码剖析》,对Python内部运行机制比以前了解的更深入了,感觉自己有机会也可以做个小型的动态脚本语言了,呵呵,当然是吹牛了。目的当然不是创造一个动态语言,目的只有一个:更好的使用Python。看到模块导入那块的时候,终于对模块导入机制比较了解了,以防忘记特记录下来。模块的搜索路径模块的搜索路径都放在了sys.path列表中,如果缺省的sys.path中没有含有自己的模块或包的路径,可以动态的加入(sys.path.apend)即可。下面是sys.path在Windows平台下的添加规则。1、sys.path第一个路径往往是主模块所在的目录。在交互环境下添加一个空项,它对 阅读全文
posted @ 2013-05-17 16:47 一个人的天空@ 阅读(4683) 评论(1) 推荐(2) 编辑
  2013年5月15日
摘要: Python中的splitlines用来分割行。当传入的参数为True时,表示保留换行符 \n。通过下面的例子就很明白了:mulLine="""Hello!!!WellcometoPython'sworld!Therearealotofinterestingthings!Enjoyyourself.Thankyou!"""print''.join(mulLine.splitlines())print'------------'print''.join(mulLine.splitl 阅读全文
posted @ 2013-05-15 13:41 一个人的天空@ 阅读(228) 评论(0) 推荐(0) 编辑
摘要: Python中按一定的格式取出某字符串中的子字符串,使用struck.unpack是非常高效的。1. 设置fomat格式,如下:#取前5个字符,跳过4个字符,再取3个字符format='5s4x3s'2. 使用struck.unpack获取子字符串importstruct printstruct.unpack(format,'Testastring')#('Test','ing')来个简单的例子吧,有一个字符串'He is not very happy',处理一下,把中间的not去掉,然后再输出。importstr 阅读全文
posted @ 2013-05-15 12:17 一个人的天空@ 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 开始以为Python中没有像其他语言一样的条件判断的缩写形式:return(1==1)?"is easy":"my god"//C#中的用法其实,在Python中,是这样写的:print(1==2)and'Fool'or'Notbad'输出结果:Not bad转帖注:其实python支持原生的条件判断缩写,如下:print 'Fool' if 1 == 2 else 'Not bad' 阅读全文
posted @ 2013-05-15 12:12 一个人的天空@ 阅读(531) 评论(0) 推荐(0) 编辑
摘要: 转换大小写和其他语言一样,Python为string对象提供了转换大小写的方法:upper() 和 lower()。还不止这些,Python还为我们提供了首字母大写,其余小写的capitalize()方法,以及所有单词首字母大写,其余小写的title()方法。函数较简单,看下面的例子:s='hEllopYthon'prints.upper()prints.lower()prints.capitalize()prints.title()输出结果:HELLO PYTHONhello pythonHello pythonHello Python判断大小写Python提供了isuppe 阅读全文
posted @ 2013-05-15 12:07 一个人的天空@ 阅读(341) 评论(0) 推荐(0) 编辑
  2013年5月14日
摘要: Base64是一种加料置位加密法,那为什么叫base64呢?因为无论明文是什么(比如汉字,特殊符号等),加密后的密文都只会变成字母A-Z、a-z和0-9 和+和/这64个字符,被他加密体后积一般会变成原来的4/3。Base64的标准在RFC2045里的24页可以看到。http://wenku.baidu.com/view/bd567523aaea998fcc220e8e.html下面我就来加密一个astralidea的简写AST来说明他的加密原理。为了说明方便,我们用人的思考方式,而不是计算机的方式,下面是上图的说明。1.假设有3个字符,首先先将他换成10进制ASCII码,然后转成2进制,少位 阅读全文
posted @ 2013-05-14 15:02 一个人的天空@ 阅读(20054) 评论(0) 推荐(1) 编辑
  2013年5月10日
摘要: 只能说是实践,因为太简单。这个实践的产生是由于中国Linux论坛上一位rings的朋友的发贴。它提供了一个如何用C编写Python扩展模块的详细过程。[精华] 在windows上扩展python。不过,那种方法要使用VC++环境,则我当时也没有。我有的环境是windows 98+cygwin,上面所提到的方法在我的环境下是无法成功的。因此我求助于google,找到一篇文章:Python + Windows + distutils + SWIG + gcc MinGWor “Creating Python extensions in C/C++ with SWIG and compiling t 阅读全文
posted @ 2013-05-10 11:23 一个人的天空@ 阅读(2771) 评论(0) 推荐(0) 编辑
摘要: OverviewAs of 2007-05-15, using Python 2.4.4 or 2.5.1 and the MinGW 5.1.3 installer installing "current" (mingw-runtime 3.12, w32api 3.9, binutils 2.16.91-20060119-1, gcc-core 3.4.2-20040916-1), the"minimalexample"Python module can be built easily with MinGW following the same in 阅读全文
posted @ 2013-05-10 11:23 一个人的天空@ 阅读(2424) 评论(0) 推荐(0) 编辑
上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 59 下一页