質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1137閲覧

エラーの原因がわからない、neopixelにNeoPixelがない

kouki-ymd

総合スコア32

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/09/22 11:06

編集2022/09/22 23:17

前提

ラズベリーパイ4でpythonを用いてneopioxelのws2812bを動かすコードを、adfruit社のHPを参考に書いています。

https://learn.adafruit.com/adafruit-neopixel-uberguide/python-circuitpython

該当のソースコード

HPを参考に以下のような記述をして実行してみたところ、

python

1import time 2import board 3import neopixel 4 5pixels = neopixel.NeoPixel(board.D18, 30) 6 7pixels[0] = (255, 0, 0) 8 9time.sleep(5)

このようなエラーメッセージが出ました。

Traceback (most recent call last): File "/home/pi/neopixel-t2-02.py", line 5, in <module> pixels = neopixel.NeoPixel(board.D18, 30) AttributeError: module 'neopixel' has no attribute 'NeoPixel'

このエラーメッセージは、neopixelにはNeoPixelは含まれていない、ということを表しているのであっていますか?あっていればこのエラーを無くすにはどうすればいいのかを教えていただきたいです。

参考

イメージ説明

の__pycache__のなかに

イメージ説明

がありました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jbpb0

2022/09/22 11:21

import neopixel のすぐ下に下記を追加して実行したら、何て表示されますでしょうか? print(neopixel.__file__) print(neopixel.__path__)
kouki-ymd

2022/09/22 12:46

import time import board import neopixel print(neopixel.__file__) print(neopixel.__path__) pixels = neopixel.NeoPixel(board.D18, 30) pixels[0] = (255, 0, 0) time.sleep(5) としたら /home/pi/.local/lib/python3.7/site-packages/neopixel/__init__.py ['/home/pi/.local/lib/python3.7/site-packages/neopixel'] Traceback (most recent call last): File "/home/pi/neopixel-t2-02.py", line 7, in <module> pixels = neopixel.NeoPixel(board.D18, 30) AttributeError: module 'neopixel' has no attribute 'NeoPixel'   となりました。 変わってなさそうです。ごめんなさい。
jbpb0

2022/09/22 21:26 編集

/home/pi/.local/lib/python3.7/site-packages/neopixel にどんなファイルがあるか確認してください もしかして、 https://github.com/ajatprabha/neopixel/tree/main/src にあるファイルでしょうか? ファイルの内容は見なくていいです ファイル名が上記Webページのと同じか? だけ確認してください あと、「neopioxel」をインストールした時のコマンドを教えてください
kouki-ymd

2022/09/22 23:15

ファイルマネージャーで確認したところ、ファイルについては同じでしたが、 __init__.py の左に __pycache__ というフォルダがあり、なかには、/home/pi/.local/lib/python3.7/site-packages/neopixelのなかのファイルの拡張子が.pyから.cpython-37.pyc に変わったものが入っていました。わかりにくくてすみません、伝わっていますでしょうか、、。
kouki-ymd

2022/09/22 23:20

質問にスクショを追加したので見て頂きたいです。
jbpb0

2022/09/23 00:57

https://learn.adafruit.com/adafruit-neopixel-uberguide/python-circuitpython#python-installation-of-neopixel-library-3005638 の「Python Installation of NeoPixel Library」に書かれてるコマンドで https://pypi.org/project/adafruit-circuitpython-neopixel/ をインストールしたら、 https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel がインストールされるはずです しかしながら、質問者さんの環境には上記ではなく https://github.com/ajatprabha/neopixel/tree/main/src がインストールされてますので、たぶん間違えて https://pypi.org/project/neopixel/ をインストールしたのだと思います 現在インストールされてる「neopixel」をアンインストールしてから、正しいコマンドでインストールし直せば、直るのではないですかね
kouki-ymd

2022/09/23 01:52

neopixelについてはエラーが出なくなったので解決したと思います。ただ今度はboardのほうでエラーが出てるのでまた調べていろいろやってみます。またお世話になるかもしれませんがその時はまた優しく教えていただければ幸いです。本当にありがとうございました。
guest

回答1

0

自己解決

adfruit-circuitpython-neopixelと間違えてneopixelをインストールしてしまっていたようです。非常に丁寧に教えて頂きありがとうございました。

投稿2022/09/23 01:56

編集2022/09/23 01:57
kouki-ymd

総合スコア32

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問