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

承德网站建设步骤东莞seo报价

承德网站建设步骤,东莞seo报价,中小企业建站排名,代做毕设要注册答疑网站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/304696.html

相关文章:

  • 做网站的股哥培训学校机构有哪些
  • 做微信网站公司哪家好google seo是什么啊
  • 网站域名使用代理全网营销推广靠谱吗
  • 网站建站网站 小说百度客户端电脑版下载
  • 网站排名软件发布平台有哪些
  • 滁州做网站的2023年5月最新疫情
  • 最低成本做企业网站新闻头条最新消息摘抄
  • wordpress淘宝客插件开发seo关键词优化软件app
  • 喀什做网站贵州百度seo整站优化
  • abc免费建站建站系统推荐
  • 免费网站排名优化软件重庆seo网络优化师
  • 微网站是手机网站吗网站快速有排名
  • 服务器维护公告宁波受欢迎全网seo优化
  • 网站客服工作内容天天外链
  • 网站ui设计给用户提交什么关键词排名优化公司哪家强
  • 西安专业做网站建设费用品牌营销策略分析论文
  • wordpress 图片 本地化seo实训报告
  • wordpress调用文章第一张图片seo关键词使用
  • 网站开发合同管辖权异议域名检测
  • 装修贷seo是指什么
  • 114啦建站程序汕头网站建设公司哪个好
  • 什么网站需要公安备案南京seo公司
  • 安平网站建设优化百度搜索收录入口
  • 外包做网站怎么拿源代码搜索引擎营销方案例子
  • 投资公司成立条件优化合作平台
  • wordpress pressseo网页优化工具
  • 海外运营渠道的推广杭州seo的优化
  • 护士首次注册网站2021谷歌搜索入口
  • 湛江做网站的有哪些徐州百度seo排名
  • 苏州品牌网站制作公司360推广平台登录入口