首页 > 编程语言 >Python面向切面编程-语法层面和functools模块

Python面向切面编程-语法层面和functools模块

时间:2023-04-25 20:33:59浏览次数:77  
标签:end log Python functools wrapper 切面 func time def


1,Python语法层面对面向切面编程的支持(方法名装饰后改变为log)

__author__ = 'Administrator'

import time

def log(func):
    def wrapper(*args):
        start = time.time()
        func(args)
        end =time.time()
        print 'func used time is :', end - start
    return wrapper

@log
def reg(args):
    
     print 'welcome %s ' %(args[0])
        
reg('joeyon','123456')



2,functools模块对面向切面的支持(方法名装饰后不改变)

import time
from functools import wraps

def log(func):
    @wraps(func)
    def wrapper(arg1,arg2):
        start = time.time()
        func(arg1,arg2)
        end =time.time()
        print 'func used time is :', end - start
    return wrapper

@log
def reg(username,pwd):
    
     print 'welcome %s ' %(username)
        
reg('joeyon','123456')




标签:end,log,Python,functools,wrapper,切面,func,time,def
From: https://blog.51cto.com/u_16088628/6225038

相关文章

  • Python中 os.popen、os.system和subprocess.popen方法介绍
    Python提供了多种与操作系统交互的方法,比如os模块中的popen和system方法,此外,Pythonsubprocess模块中的Popen类也提供了与操作系统交互的方法,使用起来更加灵活,本文将简单介绍这几种方法。目录os.popen方法os.system方法susbprocess.Popen方法替代os.popen()方法替代os.system......
  • python整理
                      ---python异步处理---1,第一类面向切面AsyncMixin:异步处理基类,包含queue和thread元组async_thread:异步method处理类,将方法加入到AsyncMixin的queue中async_class:异步class包装类,对class指定的异步method元组......
  • python线程池设计
    什么是线程池?诸如web服务器、数据库服务器、文件服务器和邮件服务器等许多服务器应用都面向处理来自某些远程来源的大量短小的任务。构建服务器应用程序的一个过于简单的模型是:每当一个请求到达就创建一个新的服务对象,然后在新的服务对象中为请求服务。但当有大量请求并发访问时,服......
  • Python Selenium搭建UI自动化测试框架
    自动化测试是软件测试中非常重要的一部分,可以提高测试效率和测试覆盖率。在UI自动化测试中,Selenium是非常流行的工具。本文将介绍如何使用Python和Selenium搭建UI自动化测试框架。一、环境准备在开始搭建UI自动化测试框架之前,需要先安装Python和Selenium。可以从Python官网下载P......
  • 安装python
    1.ubautu系统sudoapt-getinstallpython2.7sudoapt-getinstallpython3 卸装sudoapt-getremovepython3卸载Python3.6及其依赖sudoapt-getremove--auto-removepython3.6 3.将python命令映射到python3sudoaptinstallpython-is-python3 ......
  • Python模拟动态星空
    文章目录前言一、模拟星空总结前言今天,我们来用Python做个星空。一、模拟星空1,.首先导入所需要的库:fromturtleimport*fromrandomimportrandom,randint2.初始画面:screen=Screen()width,height=800,600screen.setup(width,height)screen.title('模拟3D星空')scre......
  • 【NLP教程】用python调用百度AI开放平台进行情感倾向分析
    目录一、背景二、操作步骤2.1创建应用2.2获取token2.3情感倾向分析三、其他情感分析四、讲解视频一、背景Hi,大家!我是@马哥python说,一名10年程序猿。今天我来演示一下:通过百度AI开放平台,利用python调用百度接口进行中文情感倾向分析,并得出情感极性分为积极、消极还是中性以......
  • Python pandas读取csv文件时数字变成科学计数法(含有e)
    字段内容比较长时,Python读取会变成变成科学计数法(含有e)像这样importpandasaspsdata=ps.read_csv(r"E:\AppData\DongDong\Download\file\2023-04\BaseDataPriceDetail.csv",sep=',',usecols=[4])arrary=data.values[0::,0::]#读取全部行,全部列print(arrary[19])输出......
  • [Python自动化]使用Python Pexpect模块实现自动化交互脚本使用心得
    使用PythonPexpect模块实现自动化交互脚本使用心得参考文档:https://pexpect.readthedocs.io/en/stable/前言在最近的工作中,需要使用DockerFile构建镜像。在构建镜像的过程中,有一些执行的命令是需要交互的。例如安装tzdata(aptinstalltzdata),不过在使用apt安装时,可以直接使......
  • go语言 把python项目打包、变量类型、常量、函数基础、函数高级
    把python项目打包#https://zhuanlan.zhihu.com/p/624648232#python----》setuptools--》whl包结构公司内部写了包---》公司内部用---》开源出来公司写好的项目,打包好,发给客户,客户可以直接运行起来#你们下的第三方包都是:requests-2.28.2-py3-none-any.whlwhl......