discord.py 维基百科搜索命令没有回复

discord.py wikipedia search command does not reply

当我尝试 运行 我的 cog 时出现错误“函数调用中的参数 'arg' 没有值”。有人可以帮忙吗?

from discord.ext import commands
from discord.ext.commands import Bot
import asyncio
import os
import datetime
import random
import wikipedia


class wiki(commands.Cog):

    def __init__(self, bot):
        self.bot = bot

    @commands.Cog.listener()
    async def on_ready(self):
        print("Wikipedia Cog has been loaded\n-----")

    @commands.command()
    async def wiki(self,ctx,word):
        def viki_sum(self,arg):
            definition = wikipedia.summary(arg,sentences=3,chars=1000)
            return definition
        embed = discord.Embed(title="***Wiki'de Bulduklarım:***",description=viki_sum(word))
        await ctx.send(embed=embed)

def setup(bot):
    bot.add_cog(wiki(bot))```

您好,欢迎来到 Stack Overflow!

您遇到的错误似乎来自这部分代码:

@commands.command()
async def wiki(self, ctx, word):
    def viki_sum(self, arg):
        definition = wikipedia.summary(arg, sentences=3, chars=1000)
        return definition

viki_sum函数是嵌套函数。尽管它的封闭函数是一个 class 方法并且需要使用 self 作为第一个参数,但任何嵌套函数都不需要该参数。

因此,要克服错误,您需要从 viki_sum 函数中删除 self 参数。

祝你好运!