インストールされたpyusb、まだ: 'ImportError:no moduleという名前のモジュール'


11

私のラズベリーパイIにインストールlibusbおよびpyusb経由sudo apt-get install libusb-dev python-usb

しかし、いくつかのPythonコード(ローイングマシンからデータを読み取るためのpyrow)を実行すると、このエラーが発生しimport usb.coreます:

ImportError:コアという名前のモジュールはありません

このエラーは、pyusb正しくインストールしなかったことを示唆しているため、手動で再度ダウンロードし(ダウンロードして実行sudo python setup.py install)、これで修正されませんでした。

問題はディレクトリに関係している可能性があると思います/usr/local/lib/python2.7/dist-packages/usb:Ubuntuラップトップでは、このフォルダーが存在し、(特に)含まれcore.pyていますが、Raspberry Piのフォルダーは存在しないようです。ls親ディレクトリにはフォルダがリストされていますが、マウントは機能しません...

この問題を解決するにはどうすればよいですか?Raspberry Piで特定のバージョンのpyusbを使用する必要がありますか?

  • ハードウェア:Raspberry PiモデルB
  • OS:Raspbian Wheezy(ビルド2013-02-09)

回答:


8

手順に従って、機能するかどうかを確認してください。

$ sudo apt-get update
$ sudo apt-get install python-pip  #if you don't have pip installed already
$ sudo pip install pyusb

「sudo pip install pip」で「要件はすでに満たされています」と表示されます。アップグレードすると、「要件はすでに最新」になります。Krzysztof Adamskiが示唆したように、私はpyusb-1.0の手動インストールも試しましたが、問題はまだ存在しています。新規インストールで上記の手順を実行することはできますか?
A. Goossens 2013

ステップsudo apt-get install python-piをスキップします。sudo pip install pyusbと入力するだけで動作します。
SteveIrwin 2013

入力が間違っています。「sudo pip install pyusb」で「要件はすでに満たされている」という意味です
A. Goossens 2013

1
@ A.Goossens:pyusb以前にインストールしたことがあるので、まずアンインストールする必要があります。でインストールしたパッケージは簡単ですがapt-get、手動でインストールしたパッケージの方が難しい場合があります。
Krzysztof Adamski 2013

既にインストールしたpyusbとlibusbのバージョンを思い出せなかったため、raspbianの新規インストールを行い、Stevenrwinの手順を使用しました。彼らが働いていました!今、pyrowは魅力のように動作します!どうやらlibusbは必要ないか、デフォルトですでにインストールされています。助けてくれてありがとう!
A. Goossens 2013

7

pyusb ライブラリには2つのバージョンがあります。

  • 安定(0.4.x)
  • 開発中(1.0.x)

Debianディストリビューションにはstableバージョンのみが含まれており、これはapt-getコマンドを使用してインストールしたものです。

pyrowインポートしようとしているusb.coreだけに存在する1.0.xライブラリのバージョン。そして確かに、pyrow'sウェブサイトはそれがpyusbの1.0バージョンが必要であると述べています。これがあなたが問題を抱えている理由です。

したがって、使用pyrowするにはpyusb1.0.x が必要です。これはDebianでは利用できないため、apt-getを使用してインストールすることはできません。この問題の最も簡単な解決策は、@ Stevelrwinが提案したものです。これを使用pip installすると、pyusbの1.0.xブランチがインストールされます。virtualenvDebianパッケージ以外のライブラリでシステムを汚染したくない場合に使用します。


おかげで、問題がより明確になりました!ただし、問題はまだ存在しています。Stevelrwinのコメントを参照してください。
A. Goossens 2013

3

これを試してください、これはRaspberry PI 3b + for Python 3.5.3でうまくいきました

sudo apt-get install python-usb python3-usb

実行後、コードインポートusb.coreが機能した

(Raspberry PI 3b +-Python 3.5.3-2019)


1

ユーレカ!Pythonバージョン2.7と3.4.2の両方がインストールされているRaspberry Piの問題を解決しました。

ステップ1:Python USBライブラリをバージョンから2.7、バージョン3.4にコピーします。

/usr/local/lib/python/2.7/dist-packages/に2つのフォルダーがありました

pyusb-1.0.0.egg-info、および

USB

それらは/usr/local/lib/python/3.4/dist-packages/にコピーされました

ステップ2:easy_installを使用して、Pythonバージョン3.4を「pip」コマンドラインと呼ばれるPythonインストールツールに識別します:sudo easy_install-3.4 pip

ステップ3:pyusbライブラリをPythonバージョン3.4コマンドラインにインストールします:sudo pip3.4 install pyusb

これでpyusbライブラリは、デフォルトバージョンであるバージョン2.7の代わりに(またはそれに加えて)バージョン2.7でPythonバージョン3.4にインストールされます。


-1

私も同じ問題を抱えてる。

私は原因を少なくとも私のマシンで罰金を科しました:

Raspberry piには、Pythonの2つのインストール(2.xと3.x)が付属していますが、pyusbのインストールスクリプトは、デフォルトでバージョン2.xにソフトウェアをインストールします。

したがって、バージョン3.xで使用しようとすると、「ImportError:coreという名前のモジュールはありません」というエラーが自動的に発生します。

私には今のところ解決策はありませんが、見つけるのが複雑になるべきではないと思います。


他の答えを読んでみてください、これは答えではありません。
Steve Robillard、2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.