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

Pip提示已安装inputapi,但Python调用时提示无menu属性

解决inputapi包升级后menu函数找不到的问题

下面是导致AttributeError: module 'inputapi' has no attribute 'menu'的常见原因及对应解决方法:

1. 包的__init__.py未导出menu函数

你的menu函数定义在src/inputapi/inputapi.py中,但如果inputapi目录下的__init__.py没有将该函数暴露出来,外部导入包时就无法直接通过inputapi.menu访问。

解决方法:
编辑src/inputapi/__init__.py,添加如下代码(根据需要选择):

# 仅导出menu函数
from .inputapi import menu

# 或者导出inputapi.py中的所有函数(如果需要)
from .inputapi import *

2. 升级时未正确构建/安装新版本

你修改了源码,但可能没有重新构建包,或者安装时仍使用了旧的构建文件,导致系统里还是旧版本的包。

解决步骤:

  1. 彻底卸载已安装的inputapi:
    pip uninstall -y inputapi
    
  2. 删除旧的构建产物:
    rm -rf dist/
    
  3. 安装构建工具并重新构建包:
    pip install build
    python -m build
    
  4. 安装新构建的包(注意替换为实际生成的版本文件名):
    pip install dist/inputapi-1.0.3-py3-none-any.whl
    

建议修改pyproject.toml中的版本号(比如从1.0.2升级到1.0.3),避免新旧版本混淆。

3. Python模块缓存残留

Python会缓存已导入的模块文件,即使重新安装了包,缓存的旧模块可能仍在生效。

解决方法:

  1. 找到Python的site-packages目录中inputapi的安装路径:
    python -c "import sys; print(sys.path)"
    
    从输出中找到类似.../site-packages/inputapi的路径,手动删除该文件夹。
  2. 重启VSCode或Python解释器,清除缓存后再运行代码。

4. VSCode智能感知未同步

VSCode的Python插件可能未及时更新包的索引,导致编辑器提示找不到函数(但运行报错的话,这个不是主要原因)。

解决方法:

  • 打开命令面板(Ctrl+Shift+P),执行Python: Refresh IntelliSense
  • 或执行Reload Window重新加载VSCode窗口

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 19:13:30