易截截图软件、单文件、免安装、纯绿色、仅160KB

Python元类

背后有一大套的理论 !!管它呢!?理论能当饭吃吗?
先知道怎么用再说!
记住:元类就是类的模板——太形象了了呀,霍霍。
我要一大群的类都具有一中特点,我怎么给他们加上呢?模板模板吗,我从这个模板创建一群类不就OK了?那就需要元类了。霍霍》
定义一个元类(就所一个类的模板!莫多想,还要记住这是类级别的,不是对象级别的!):
class MyMeta(type):
...     def __init__(cls,name,bases,dic):
...         print cls.__name__
...         print name
...     def __str__(cls):return 'Beautiful class %s'%cls.__name__
这是个什么东西?哈,这是个元类。是个类的模板。
它要用在哪里?它要用在一个类里,作为这个类的模板。
起的什么作用?模板,就是提供一些共同的特征。
这个类提供了什么样的特征?两个特征,1。类定义后打印类的名字(__init__)。2。打印类的格式(__str__)。
到底回怎么工作,打开的你的解释器,输入以上的代码,上路:
输入:
class MyClass(object):
...     __metaclass__ = MyMeta
回车结束类的定义时,输出:
MyClass
MyClass
明白了吧,霍霍!事实证明它确实是初始化一个类,而不是一个对象!!!!!这个是第一个特征。
第二个:
输入:
print MyClass
输出:
Beautiful class MyClass
啊哈,恰如其分,如我们所预料的那样!!!!!!!!当然你可以任意个性化你的类!!
####################################################################################
下面我们来实现一个Singleton模式(来自啄木鸟社区):
Singleton元类:
class Singleton(type):
...     def __init__(cls,name,bases,dic):
...         super(Singleton,cls).__init__(name,bases,dic)
...         cls.instance = None
...     def __call__(cls,*args,**kwargs):
...         if cls.instance is None:
...             cls.instance = super(Singleton,cls).__call__(*args,**kwargs)
...         return cls.instance
非常简单的一个设计模式


相关文档:

Python脚本解析BitTorrent种子文件内容

有很多种子文件,有时候记不清里面都是什么东西,又不想一个一个的拖放到迅雷或BT软件里头看,
上网查了一下Python的脚本,自己也稍微修改了一下,代码如下,粘贴到文本编辑器中(最好是带格式的如UltraEdit或VS2008等):
保存成py后缀的,直接运行
import re
def tokenize(text, match=re.compile("([idel])|(\d+):|( ......

天朝要将python官网下载页面封到何时?

可恶、可悲、可耻、可怜、可叹、可笑!!!
2009年10月15日,一个令广大python编程工作爱好者哭笑不得的事发生了——python的官方网站(http://www.python.org)被伟大的天朝给封了!
当时,有人说是因为有一个H网站和python的官网很像,封错了。于是,我试着打开了那个“相似的网站http://www.python.com ......

python 中使用paramiko简单连接

在paramiko中使用用户名和密码通过sftp传输文件,不使用key文件。
import getpass
import select
import socket
import traceback
import paramiko
def putfile():
#import interactive
# setup logging
paramiko.util.log_to_file('demo.log')
username = username
hostname = hostname
......

python简单的可逆加密程序

简单加密,用python来写写。
#coding=utf-8
'''
Description: 可逆的加密与解密
Environment: python2.5.x
Author:idehong@gmail.com
'''
import os
import sys
class Code(object):
'''可逆的加密与解密'''

def __init__(self, key = "idehong@gmail.com"):
self.__src_key ......

Python 3 输出重定向使用C/C++

Python 3 输出重定向使用C/C++
By:gddsky
 
目标
希望将Python 3的输出重定向到自定义的输出目标。
 
核心
Python使用sys.stdout、sys.stderr做输出目标,只要我们替换这两个值就可以重定向到我们自定义目标。替换的值的规则在Python的文档中sys (module)的sys.stdout上面说明只要添加一个write函数就可以 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号