zoukankan      html  css  js  c++  java
  • 留给晚上分享用的python代码

    #encoding=utf8
    __author__ = 'Administrator'

    #如果是直接运行文件的话
    if __name__=="__main__":
        print("main")

    #怎么做性能测试
    import time
    def timer(reptimes,func,*pargs,**kargs):
        start=time.clock()
        for i in range(reptimes):
            func(*pargs,**kargs)
        return time.clock()-start
    def test(test):
        [i for i in range(test)]
    print(timer(100,test,100))

    #字符串格式化
    print("{0}-{1}-{2}".format(1,1,1))
    print("{name}-{age}".format(name="name",age="age"))

    #代替linq
    x=range(10)
    print(str(x))
    #解析表达式 速度最快
    x1=[i for i in x if i%2==0]
    print(x1)
    x2=x[0::2]
    print(x2)
    x3=list(map((lambda i:i%2==0 and i or None),x))
    print(x3)
    x4=list(filter(lambda i:i%2==0,x))
    print(x4)


    #普通类
    class Person(object):
        def __init__(self,name,age):
            self._name=name
            self._age=age
        @property
        def name(self):
            return self._name
        @name.setter
        def name(self,value):
            self._name=(value+"...")
        @name.deleter
        def name(self):
            raise RuntimeError("no")
        @staticmethod
        def Run(someone):
            if isinstance(someone,Person):
                print("run")
            else:
                raise RuntimeError("只有人能跑")
        def __str__(self):
            return "my name is "+self._name+" i'm "+str(self._age)
    john=Person("john",11)
    print(john)
    Person.Run(john)
    #Person.Run(1)
    john.name="john"
    print(john)
    #del john.name

    #演示继承
    class Man(Person):
        def __init__(self,name,age,sex):
            super(Man,self).__init__(name,age)
            self.sex=sex
        def __str__(self):
            return super(Man,self).__str__()+self.sex
    man=Man("man",21,"男")
    print(man)

    from abc import abstractmethod,abstractproperty,ABCMeta
    #抽象类
    class abClass():
        __metaclass__=ABCMeta
        @abstractmethod
        def abMethod(self):
            pass
        @abstractproperty
        def abPr(self):
            pass
    #abEntity=abClass()

    #演示AOP
    class trace(object):
        def __init__(self,func):
            self.func=func
        def __call__(self, *args, **kwargs):
            print("------begin------")
            print(dir(self.func))
            print(self.func.__code__)
            self.func(*args,**kwargs)
            print("----------end----------")
    #演示AOP
    def mydecorator(func):
        def _mydecorator(*pargs,**kargs):
            print("ffff")
            res=func(*pargs,**kargs)
            return res
        return _mydecorator

    def complexDecorator(name):
        def _mydecorator(func):
            def _mydecorator(*pargs,**kargs):
                print(name)
                res=func(*pargs,**kargs)
                return res
            return _mydecorator
        return _mydecorator

    @complexDecorator("bw")
    @mydecorator
    @trace
    def demoTrace():
        print("me")
    demoTrace()

  • 相关阅读:
    PHP脚本如何正确启用sg11安全组件?
    android修改系统时系统黑屏时不进入休眠状态
    计算机自考视频汇总【福利资料】[转]
    解决MySql报错:1130
    “领导想提拔你,看的从不是努力
    interTbale ___AlterTable
    MySQL数据库管理系统概述
    《分布式任务调度平台XXL-JOB》
    mysql 在线文档
    Oracle19c 数据库在线文档
  • 原文地址:https://www.cnblogs.com/brightwang/p/2068547.html
Copyright © 2011-2022 走看看