Python运行discord代码提示module 'discord' has no attribute 'Bot'如何解决
报错解决方案
错误根因
该报错是当前安装的discord.py库版本与代码写法不匹配导致:
- discord.py 2.0及以上版本 才支持直接调用
discord.Bot()初始化机器人实例 - discord.py 1.x版本 中,Bot类归属在
discord.ext.commands子模块下,无法直接从discord根模块调用
两种解决路径
路径1:修改代码适配当前版本
无需调整已安装的库,修改原有代码即可正常运行:
- 先导入commands子模块
- 将初始化写法改为调用
commands.Bot
修改后的完整代码示例:
import discord from discord.ext import commands bot = commands.Bot(command_prefix = "lol")
路径2:升级discord.py到2.x版本
如果需要使用新版特性(比如原生斜杠命令)、保留原有discord.Bot()写法的话,执行如下命令升级库即可:pip install --upgrade discord.py
异常排查
如果升级后仍然报错,可执行以下操作重置安装:
- 执行
pip uninstall discord discord.py卸载所有相关重名库 - 重新执行
pip install discord.py安装官方正版库
内容的提问来源于stack exchange,提问作者squishy
相关产品推荐
相关产品推荐

