You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在discord.py中修改Discord服务器RTC区域时参数错误的技术咨询

解决Discord.py修改服务器RTC区域的参数错误问题

错误原因

你的代码使用了旧版discord.py的参数名rtc_region,但在discord.py v2.0及以上版本中,修改服务器语音(RTC)区域的参数已更名为voice_region,因此触发TypeError提示参数不存在。

修正后的代码

替换参数名并添加合法性校验,避免无效输入:

import discord
from discord.ext import commands

# 假设edit是已定义的命令组
@edit.command()
async def region(ctx, *, region_name: str):
    try:
        # 将输入转换为合法的VoiceRegion枚举值(不区分大小写)
        target_region = discord.VoiceRegion(region_name.lower())
        await ctx.guild.edit(voice_region=target_region)
        await ctx.send(f"服务器语音区域已成功修改为:{target_region.name}")
    except ValueError:
        # 列出所有可用的合法区域,提示用户正确输入
        available_regions = ", ".join([region.value for region in discord.VoiceRegion])
        await ctx.send(f"无效的区域名称!可用区域列表:{available_regions}")

额外说明

  • 使用discord.VoiceRegion枚举可以严格校验区域名称的合法性,防止因拼写错误导致修改失败
  • 异常处理逻辑能给用户清晰的错误反馈,同时提供所有可选区域参考

内容的提问来源于stack exchange,提问作者Rafael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 07:09:59