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

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

新規登録して質問してみよう
ただいま回答率
85.49%
import

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Python

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

Q&A

解決済

1回答

6531閲覧

from pycocotools.coco import COCOでエラーが発生する

nekonoko09

総合スコア3

import

自身のプラットフォーム・プログラム・データセットに対して、外部ソースを取り込むプロセスをimportと呼びます。

Python

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

0グッド

1クリップ

投稿2021/07/17 03:02

前提・実現したいこと

Pythonでcoco datasetを使用するための環境構築を行っています
pycocotoolsをインストールしたのですが,モジュールがないというエラーが出ます.

発生している問題・エラーメッセージ

ModuleNotFoundError: No module named 'pycocotools'

該当のソースコード

from pycocotools.coco import COCO import skimage.io as io import matplotlib.pyplot as plt import numpy as np import tensorflow as tf from glob import glob from IPython.display import clear_output

試したこと

!pip install -U scikit-image !pip install -U cython !pip install "git+https://github.com/philferriere/cocoapi.git#Egg=pycocotools&subdirectory=PythonAPI"

を実行してから該当のコードを実行してみました.
それでも同様のエラーが出ました.

補足情報(FW/ツールのバージョンなど)

Jupyter Notebookを使用しています.
カーネルの再起動も試しましたがダメでした.
該当のコードの前にpip install pycocotoolsを実行しています.
こちらはエラーが出ていないので成功していると思います.

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

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

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

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

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

jbpb0

2021/07/17 09:41 編集

!pip show pycocotools を実行したら、いろいろ表示される中に「Location:」で始まる行がありますので、そこに書かれてるパスを記録してください 次に、下記を実行してください import sys import pprint pprint.pprint(sys.path) たくさんパスが表示されますが、その中にpip show...で記録したパスが入ってますでしょうか? 入ってないとimportできません
nekonoko09

2021/07/17 04:16

教えていただいたコードを実行しましたところ,pip showで記録したパスが入っていませんでした. この場合,Locationにpip showで記録したパスを追加しなければいけないのでしょうか.調べても解決策がわかりませんでしたので,この場合の解決方法も教えていただきたいです.重ね重ね申し訳ありません.
jbpb0

2021/07/17 12:29 編集

お使いのパソコンには、二つ以上の別のPythonが入っています Jupyterで使ってるPythonと、「!pip install…」で実行したpipコマンドに紐付いてるPythonが異なることが、importできない原因です pipでインストールしたものは、pipコマンドに紐付いてるPythonに入っていて、もしそちらのPythonをJupyterで使ってれば、現状でもJupyterでimportできるはずです しかしながら、現状でJupyterで使ってるPythonはそれとは別のもので、そこにはpipでインストールしたものは入ってないため、importできません そこで対策としては、二通りあります ・現状Jupyterで使ってるPythonにインストールする ・現状使ってるpipコマンドに紐付いてるPythonをJupyterで使う どちらを選ぶかで対処方法が変わります 前者の対処方法の一つを以下に書きます 下記を実行してください import sys print(sys.executable) 以下は、その結果が「/usr/local/bin/python」だったとして説明するので、実際の結果に読み替えてください !pip install -U scikit-image の代わりに !/usr/local/bin/python -m pip install --upgrade scikit-image を実行してみてください 他の行も同様です
guest

回答1

0

ベストアンサー

お使いのパソコンには、二つ以上の別のPythonが入ってます
Jupyterで使ってるPythonと、「!pip install...」で実行したpipコマンドに紐付いてるPythonが異なることが、importできない原因です

pipでインストールしたものは、pipコマンドに紐付いてるPythonに入ってて、もしそちらのPythonをJupyterで使ってれば、現状でもJupyterでimportできるはずです
しかしながら、現状でJupyterで使ってるPythonはそれとは別のもので、そこにはpipでインストールしたものは入ってないため、importできません

そこで対策としては、二通りあります
・現状Jupyterで使ってるPythonにインストールする
・現状使ってるpipコマンドに紐付いてるPythonをJupyterで使う
どちらを選ぶかで対処方法が変わります
前者の対処方法の一つを以下に書きます

下記を実行してください

python

1import sys 2print(sys.executable)

以下は、その結果表示が「/usr/local/bin/python」だったとして説明するので、質問者さんが実行する際は、上記を実行した結果表示に読み替えてください

.

python

1!pip install -U scikit-image

の代わりに

python

1!/usr/local/bin/python -m pip install --upgrade scikit-image

を実行してみてください
他の行も同様に変えて実行してみてください
そうすれば、現状Jupyterで使ってるPythonにインストールされるので、Jupyterでimportできるようになると思います

投稿2021/07/18 07:16

jbpb0

総合スコア7651

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

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

nekonoko09

2021/07/18 11:45

教えていただいた方法で無事にimportすることができました。 何度も質問に答えてくださり本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.49%

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

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

質問する

関連した質問