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

嵌套函数返回值调用报错:‘private_key未定义’问题咨询

问题原因与解决方案

你报错的核心原因是没有接收异步函数返回的结果。被@sync_to_async装饰的get_user_wallet虽然返回了wallet和private_key,但你调用await get_user_wallet()时,没有把这两个返回值赋值给外部作用域的变量。嵌套函数内部定义的private_key仅在函数内部有效,外部无法直接访问。

修改后的代码如下:

async def wallet(self, interaction:discord.Interaction, button:discord.ui.Button):

    ### Blah blah blah ###
    
    @sync_to_async
    def get_user_wallet():

        private_key = abc
        wallet = xyz

        return wallet, private_key

    # 接收返回的两个值,赋值给外部作用域的变量
    wallet, private_key = await get_user_wallet()
    view = secretKeyView(private_key)
    await interaction.response.send_message()

通过将异步调用的返回值解构赋值给外部变量,private_key就能在后续代码中正常使用了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 07:29:56