首页 > 软件开发 > PYTHON >

Python:如何修正装饰器修饰函数的__name__属性

来源:互联网 2023-03-16 19:25:26 377

Python是常用的一种编程语言,经过decorator装饰之后的函数__name__属性值会被同步修改,使用Python内置的functools.wraps可以进行修正。今天教大家在Python编程中如何修正装饰器修饰函数的__name__属性。lWs办公区 - 实用经验教程分享!

工具/原料

  • 联想小新pro13
  • Win10
  • Python3.6.5
  • PyCharm2019.3.3

方法/步骤

  • 1

    首先在PyCharm软件中,打开一个Python项目。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 2

    在Python项目中,新建并打开一个空白的python文件(比如:test.py)。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 3

    在python文件编辑区中,使用 def 关键字,定义需要传入 text 参数的 log 装饰器。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 4

    然后在 log 装饰器的 wrapper 函数声明上一行加上:“@functools.wraps(func)”。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 5

    然后使用 def 关键字定义一个 now 函数。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 6

    接着在 now 函数上一行添加“@log('execute')”,使用 log 装饰器。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 7

    输入:“print(now.__name__)”,调用输出被装饰器修饰的函数的 __name__ 属性。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 8

    在编辑区域点击鼠标右键,在弹出菜单中选择“运行”选项。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 8此文章未经授权抓取自百度经验
  • 9

    在运行结果窗口中查看运行结果,可以看到已经成功地修正了装饰器修饰函数的__name__属性。lWs办公区 - 实用经验教程分享!

    Python:如何修正装饰器修饰函数的__name__属性lWs办公区 - 实用经验教程分享!

  • 以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!lWs办公区 - 实用经验教程分享!


    标签: 编程python函数

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码