Autocomplete in PyCharm for Python compiled extensions

后端 未结 9 841
遥遥无期
遥遥无期 2020-12-09 02:46

When writing Python code using compiled extensions (the OpenCV Python bindings, for example), PyCharm doesn\'t seem to be aware of their availability. The imports are marked

相关标签:
9条回答
  • 2020-12-09 03:08

    After two days test,I finally fix this issue: The difference:

    1. Uninstall python 3.7.2,install python 3.7.7.
    2. Change the path where python install.(I strongly doubt that the cause is that my PATH of opencv-python has some Chinese characters.It should have only English).

    Then do:

    1. Install the opencv-contrib-python.
    0 讨论(0)
  • 2020-12-09 03:11

    The imports are marked with a grey underline, saying "unresolved reference" as a tooltip

    This most probably means that PyCharm can't see the module you import. In editing mode, PyCharm relies on availability of Python sources of imported modules. If a module is not written in Python but is a C extension module, PyCharm generates a 'skeleton' that contains function prototypes, and uses it for completion.

    In shell mode, PyCharm uses live imported objects for completion, with slightly different results.

    Make sure that your OpenCV installation is visible for the Python interpreter you chose for the project (File / Settings / Python interpreter). If the interpreter is correct, try removing and re-adding it (this is time-consuming a bit, sorry).

    If nothing helps, file a bug.

    0 讨论(0)
  • 2020-12-09 03:12

    I had to hardlink the binary into the folder lib-dynload of my interpreter.

    $ cd /usr/lib/python3.7/lib-dynload
    $ sudo ln /usr/local/lib/python3.7/dist-packages/cv2/python-3.7/cv2.cpython-37m-x86_64-linux-gnu.so cv2.cpython-37m-x86_64-linux-gnu.so
    

    The paths may vary in your environment. I don't testet it on OSX or Windows, but it may work there too. The lib-dynload folder is here:

    0 讨论(0)
  • 2020-12-09 03:13

    PyCharm currently does not scan compiled extensions/binaries which are in a path manually added to the interpreter in the IDE. I have filed a bug with Jetbrains in YouTrack. You might want to have a look at it and possibly the discussion I initiated in their discussion forum (link is in the bug description). I'd appreciate if you could vote for this issue to be resolved in YouTrack if you are a PyCharm user facing the same problem.

    0 讨论(0)
  • 2020-12-09 03:20

    I follow the instructions under this question: How to install OpenCV on Windows and enable it for PyCharm without using the package manager

    After that it does not work and I reinstall the pycharm ide without any other changes and now it is working perfectly. I know that this is not the best answer, but after a lot of time wasted and trying different workarounds this was the one that solve my problem, I hope it can help you.

    0 讨论(0)
  • 2020-12-09 03:23

    Try clicking "Reload" button in File | Settings | IDE Settings | Python interpreters. That got it working for me.

    0 讨论(0)
提交回复
热议问题