• Coc-pright 是静态语法分析器,而 python 有一些包是没有经过预编译的,比如说 opencv ,所以就会有找不到相关包的语法分析的情况发生

  • 首先

    1
    
    pip install mypy
    
  • 生成 cv2 的 pyi 文件

    1
    
    stubgen -m cv2 -o {cv2-package-folder}
    
    • 在我的环境下 {cv2-package-folder} 是

      1
      
      /home/asleep/softwares/conda/conda/envs/ocv/lib/python3.9/site-packages/cv2
      
    • 执行命令之后会在目录下生成 cv2.pyi 文件


  • 将 cv2.pyi 移动到 coc-pyright 的解析目录,成功解析

    1
    
    cp /home/asleep/softwares/conda/conda/envs/ocv/lib/python3.9/site-packages/cv2/cv2.pyi  /home/asleep/.config/coc/extensions/node_modules/coc-pyright/node_modules/pyright/dist/typeshed-fallback/stdlib