当前位置: 首页 > wzjs >正文

承德网站建设步骤产品营销策划

承德网站建设步骤,产品营销策划,建设网站多久到账,企业所得税优惠政策最新2023年100万以下makeListCompatible 装饰器的调用位置在 log.py 的 日志初始化部分,具体流程如下: 调用位置与作用 在代码末尾的初始化阶段,原始日志方法(如 lg.info)被 makeListCompatible 装饰器包装,生成支持多参数输入…

在这里插入图片描述

makeListCompatible 装饰器的调用位置在 log.py日志初始化部分,具体流程如下:


调用位置与作用

在代码末尾的初始化阶段,原始日志方法(如 lg.info)被 makeListCompatible 装饰器包装,生成支持多参数输入的新方法。以下是关键代码段:

# 初始化日志器和日志方法
logging.setLoggerClass(MininetLogger)
lg = logging.getLogger("mininet")# 原始日志方法列表:lg.info, lg.output, lg.warning, lg.error, lg.debug
_loggers = lg.info, lg.output, lg.warning, lg.error, lg.debug# 使用装饰器包装每个日志方法,支持多参数输入
_loggers = tuple(makeListCompatible(logger) for logger in _loggers)# 将装饰后的方法重新赋值给日志器
lg.info, lg.output, lg.warning, lg.error, lg.debug = _loggers# 导出为全局函数
info, output, warning, error, debug = _loggers

装饰器工作原理

1. 装饰器定义
def makeListCompatible(fn):def newfn(*args):if len(args) == 1:return fn(*args)# 将多参数拼接为字符串args_combined = ' '.join(str(arg) for arg in args)return fn(args_combined)return newfn
2. 装饰器调用过程
  • 原始方法:例如 lg.info 是一个普通的日志方法,只能接受单个参数(字符串)。
  • 装饰后方法:通过 makeListCompatible(lg.info),生成一个新方法 newfn
    • 当用户调用 info('a', 1, 'b') 时:
      1. newfn 接收到参数 ('a', 1, 'b')
      2. 检查参数数量:len(args) > 1,执行拼接操作。
      3. 拼接后参数变为 'a 1 b'
      4. 调用原始的 lg.info('a 1 b')

实际效果验证

示例代码
from mininet.log import info# 调用装饰后的 info 方法
info('Host', 1, 'status:', 'up')  # 多参数调用
输出结果
Host 1 status: up
等效代码
# 原始方法调用(未经装饰)
lg.info('Host 1 status: up')

关键点总结

  1. 调用位置:装饰器在日志初始化阶段被批量应用到所有日志方法(info, output, warning 等)。
  2. 作用:将多参数输入自动拼接为单个字符串,简化用户调用方式。
  3. 实现细节
    • 通过生成器表达式 tuple(makeListCompatible(logger) for logger in _loggers) 完成批量装饰。
    • 装饰后的方法重新赋值给日志器,并导出为全局函数。

通过这种方式,用户可以直接使用 info('a', 1, 'b') 的简洁语法,而无需手动拼接字符串。


http://www.dtcms.com/wzjs/104861.html

相关文章:

  • 门户网站 方案企业网站的推广方法有哪些
  • 如何做网站首页图seo与sem的区别和联系
  • 网站数据库清空2023最新15件重大新闻
  • 如何快速建立一个网站在百度上怎么发布信息
  • 3D特效做首页的网站简述在线推广网站的方法
  • 东莞想做网站湖南平台网站建设设计
  • 视频网站开发公司网站流量统计软件
  • wordpress需要登录密码百度seo搜索引擎优化方案
  • 网站网络营销外包seo站长工具是什么
  • 两学一做的做题网站是多少产品推广介绍
  • 南通优化网站费用公众号怎么推广
  • 摩洛哥网站后缀谷歌seo搜索引擎
  • 设计品牌网站seo基本步骤
  • 网站建设需要知道什么软件百度普通版下载
  • 信息无障碍 网站建设今日新闻国际头条新闻
  • 境外网站开发专业网站制作网站公司
  • 上海做网站的公司联系方式网课免费平台
  • 如何做网站认证推广seo公司
  • javaee与网站建设google登录
  • 网站日志分析怎么做网络营销方案的制定
  • 企业网站的主要功能河北百度seo
  • 文联网站建设方案网站测试的内容有哪些
  • 网站a记录的是做cname查询关键词
  • 上海网站建设加q.479185700刷评论网站推广
  • 网站ip需要备案交换友链平台
  • 国外的网页制作网站网站的网站建设
  • 游戏推广网站如何做的高端网站制作
  • 自己做网站麻烦吗百度推广运营专员
  • 优购商城网站建设站长之家站长工具综合查询
  • 成都网站建设优秀公司营销推广的特点