If you're on bionic and you do find out PyQt5 is needed alongside Qt Company's pyside2, instead of using sudo issue the pip3 commmand at the prompt for the user who will use the package with the --user
switch:
$ pip3 install --user PyQt5
For PySide2, you can find more information under the heading 'Development: Getting Started' here: https://wiki.qt.io/Qt_for_Python
Many popular Python packages, including the core Python packages, are made available by way of your Ubuntu distribution's repo. The caveat is Python core modules like Idle and pip, elements core to the language, must be found so that a complete installation can be assembled. Docs, for instance must be installed separately, and python3-pip installed to get pip3 must be installed separately or by installing python3-setuptools. Consequently, there is what amounts to misinformation about installing Python modules for Python on various flavours of Ubuntu, even in very well documented and active projects. It isn't sufficient to pip install when doing so may break your pip installation, forcing you to clear and reinstall it.
It is a safe bet that if you can find the package you're looking for in an Ubuntu repo for your distribution, you should install it -- that way. Otherwise, the --user
switch is your friend.