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

Jupyter中input函数异常:变量转为PyodideFuture无法拼接

解决Pyodide下PyodideFuture无法拼接及input()失效问题
  • 核心原因:Pyodide运行在浏览器环境中,多数IO操作(包括input())是异步的,会返回PyodideFuture对象而非直接结果值,必须通过await获取实际内容。
  • 正确使用input()并完成拼接的示例:
    import asyncio
    
    async def handle_input_and_concat():
        # 用await拿到真实的输入字符串,而非Future对象
        str_a = await input("请输入第一个字符串:")
        str_b = await input("请输入第二个字符串:")
        # 正常执行拼接操作
        combined_str = str_a + " " + str_b
        print("拼接结果:", combined_str)
    
    # 执行异步函数
    asyncio.run(handle_input_and_concat())
    
  • 关键注意点:
    • 必须在异步函数内部使用await,全局环境下直接使用可能报错(部分Jupyter环境支持顶级await,但封装成异步函数兼容性更好)。
    • 所有返回PyodideFuture的操作,都要加await才能获取真实值,否则无法进行字符串拼接、数值运算等常规操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 06:28:13