如何在 Python 中忽略烦人的警告?

如何在 Python 中忽略烦人的警告?

    • 代码讲解
      • [**1. 导入需要用到的工具**](#1. 导入需要用到的工具)
      • [**2. 定义一个函数:ignore_warnings**](#2. 定义一个函数:ignore_warnings)
      • [**3. 忽略特定的警告**](#3. 忽略特定的警告)
      • [**4. 调整日志显示级别**](#4. 调整日志显示级别)
      • [**5. 设置 Transformers 库的日志等级**](#5. 设置 Transformers 库的日志等级)
    • 什么时候用这段代码?
    • 总结

当你用 Python 写代码时,有时候会看到一些"警告"信息。这些信息不会让代码出错,但会让输出看起来很乱。如果你觉得这些警告很烦,可以用下面的代码让它们"闭嘴"。今天我们就来学学这段代码是怎么做到的!


代码讲解

1. 导入需要用到的工具

python 复制代码
import warnings
import logging
from transformers import logging as hf_logging
  • warnings:这是 Python 内置的工具,用来管理"警告"。
  • logging:这是 Python 的日志工具,日志就是程序运行时输出的提示信息。
  • hf_logging :这是 transformers 库的日志工具,我们也可以用它调整日志的显示。

2. 定义一个函数:ignore_warnings

python 复制代码
def ignore_warnings():

函数就像一个"工具箱",当你需要它的功能时,只要调用它就可以。


3. 忽略特定的警告

python 复制代码
warnings.filterwarnings("ignore", message="Some weights of the model checkpoint")
warnings.filterwarnings("ignore", message="Could not find image processor class")
warnings.filterwarnings("ignore", message="The `max_size` parameter is deprecated")
  • warnings.filterwarnings("ignore", ...):这是说"我要忽略某些警告"。
  • message:这里写的是警告的内容,只要警告里包含这段文字,就会被"静音"。

就像我们告诉程序:"看到这些'内容'的警告,别烦我!"


4. 调整日志显示级别

python 复制代码
logging.basicConfig(level=logging.ERROR)
  • logging.basicConfig:设置日志的"声音大小"。
  • level=logging.ERROR:告诉程序"只显示出错的信息,别展示其他没用的提示"。

5. 设置 Transformers 库的日志等级

python 复制代码
hf_logging.set_verbosity_error()
  • hf_logging.set_verbosity_error() :这是专门用来调节 transformers 库的日志,告诉它"只显示出错信息,其他的不要说话"。

什么时候用这段代码?

  • 用深度学习工具 :比如 transformers,它会输出很多没用的警告,影响阅读。
  • 调试代码时:有时候只想看重要的信息,忽略那些不必要的提示。

总结

这段代码就是一把"静音遥控器",帮我们把那些烦人的警告和不重要的信息屏蔽掉,让代码的输出更加干净整洁!

完整代码

python 复制代码
import warnings
import logging
from transformers import logging as hf_logging

def ignore_warnings():
    # 忽略特定的警告
    warnings.filterwarnings("ignore", message="Some weights of the model checkpoint")
    warnings.filterwarnings("ignore", message="Could not find image processor class")
    warnings.filterwarnings("ignore", message="The `max_size` parameter is deprecated")

    # 调整日志等级,只显示错误信息
    logging.basicConfig(level=logging.ERROR)
    hf_logging.set_verbosity_error()

快把这段代码加到你的项目里试试吧!它会让你的输出世界清静很多哦 😊。

相关推荐
Surmon2 分钟前
彻底搞懂大模型 Temperature、Top-p、Top-k 的区别!
前端·人工智能
困死,根本不会5 分钟前
Kivy+Buildozer 打包 APK 踩坑:python-for-android 克隆失败
开发语言·php·kivy
见行AGV机器人2 小时前
无人机脉动线中的AGV小车
人工智能·无人机·agv·非标定制agv
咸鱼2.02 小时前
【java入门到放弃】跨域
java·开发语言
廋到被风吹走2 小时前
【AI】从 OpenAI Codex 到 GitHub Copilot:AI 编程助手的技术演进脉络
人工智能·github·copilot
newsxun2 小时前
DHA之后,大脑营养进入GPC时代?
人工智能
sg_knight2 小时前
设计模式实战:模板方法模式(Template Method)
python·设计模式·模板方法模式
程序员Better3 小时前
2026年AI大模型选择指南:8大主流模型深度对比,小白秒懂如何选!
人工智能
FreakStudio3 小时前
ESP32居然能当 DNS 服务器用?内含NCSI欺骗和DNS劫持实现
python·单片机·嵌入式·面向对象·并行计算·电子diy
ai_xiaogui3 小时前
AIStarter新版后端原型图详解:架构全面升级+共享环境一键部署,本地AI模型插件工作流管理新时代来临(2026开发者必看)
人工智能·架构·推动开源ai落地·原型图细节·aistarter新版·aistarter新版原型图·架构全面升级+共享环境一键部署