インポートエラーを表示:Ubuntuの 'can'から名前 'Message'をインポートできません。

インポートエラーを表示:Ubuntuの 'can'から名前 'Message'をインポートできません。

私のラップトップUbuntu 20では、TCPソケットを使用してメッセージを送受信しており、ライブラリをPython使用しています。canしたがって、私のPythonコードの行は次のようになります。

from can import Message

うまくいきましたが、フォルダを変更した後に次のエラーが発生しました。

Traceback (most recent call last):
  File "/home/rafi/PycharmProjects/Right Turn/CAN_simulator_Recv.py", line 12, in <module>
    from can import Message
ImportError: cannot import name 'Message' from 'can' (/home/rafi/.local/lib/python3.8/site-packages/can/__init__.py)

誰でもこのエラーを解決するのに役立ちますか?おそらくディレクトリやパッケージに関連していますか?同じcanライブラリが私のRaspberry Pi Ubuntu 20でうまく動作します。私のラップトップにUbuntuを再インストールすると役に立ちますか?

次のコマンドを使用してインストールしました。

pip3 install python-can

次のコマンドを使用して削除してみてください。

pip3 uninstall python-can

ただし、削除しようとすると、次のエラーが表示されます。

PermissionError: [Errno 13] Permission denied:

答え1

私はこの解決策が私にとって効果的であることを知りました。

  1. 試しましたが、pip3 uninstall python-can「sudo」権限で試しました。 Raspberry Piはこの問題を解決できますが、Ubuntuはパスワードを一度尋ねます。

    sudo pip3 uninstall python-can
    
  2. 再インストールするには、「sudo」を再度使用しないでください。それ以外の場合、ライブラリは正しい権限で実行されません。代わりに「sudo」なしで試してみてください。

    pip3 install python-can
    

今それは私にとって効果的です。それがあなたにも効果があることを願っています...

関連情報