外观
踩坑GitHub google-deepmind/mujoco3 天前
MuJoCo Python绑定类型检查报错Parameter assets unfilled
本文由 AI 根据公开内容整理,可能有误,请以原文为准:Python bindings do not work well with type checkers(GitHub google-deepmind/mujoco #244)
状态:有绕过办法
问题
在PyCharm等IDE中使用mujoco.MjModel.from_xml_string(XML, ASSETS)时,类型检查器警告"Parameter 'assets' unfilled"。原因是MuJoCo 2.1.5+的自动生成类型提示将静态方法错误标记为包含self参数的实例方法,且官方未提供py.typed标识或.pyi存根文件,导致类型检查工具无法正确解析签名。
环境
MuJoCo Python bindings (2.1.5及以上版本),PyCharm IDE,mypy类型检查工具。
解决办法
- 安装第三方类型存根包:执行
pip install "mujoco-stubs==3.16.0.*"(版本号需与本地MuJoCo版本匹配,支持3.4.0-3.17.0)。 - 该包遵循PEP561标准,安装后IDE与mypy可自动识别正确的静态方法签名,消除参数未填充警告。
- 若需自行生成存根,应使用mypy自带的
stubgen工具而非mypy检查命令,并参考社区issue #1292中的文本替换脚本修复自动生成缺陷。 - 注意官方明确表示当前不支持类型检查,未来若发布官方
.pyi文件将包含py.typed以启用完整类型支持。
讨论原作者:@ikamensh 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。