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

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

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

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

Q&A

解決済

2回答

8958閲覧

vscodeでpythonを走らせた時のimportエラーを解決したいです。

LNy8xTdKWw

総合スコア1

Python

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

0グッド

1クリップ

投稿2022/08/29 04:51

前提

vscodeでpythonを走らせた時のimportエラー

実現したいこと

VScodeでpythonを走らせています。ほぼ初心者なので前提知識はあまり無いものとして教えていただけると大変ありがたいです。

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

テキストを選択して、ターミナルから選択したテキストの実行を押したところ、以下のようなメッセージが出てきます。

import : 用語 'import' は、コマンドレット、関数、スクリプト ファイル、また は操作可能なプログラムの名前として認識されません。名前が正しく記述されてい ることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから 、再試行してください。 発生場所 行:1 文字:1 + import cv2 + ~~~~~~ + CategoryInfo : ObjectNotFound: (import:String) [], CommandN otFoundException + FullyQualifiedErrorId : CommandNotFoundException

このようなエラーを消すためにはどうすればよいのでしょうか。どのようなコードでも同様のエラーが出ます。

該当のソースコード

以下のライブラリをインストールし、

pip install smopy pip install opencv-contrib-python pip install numpy pip install matplotlib

以下のテキストを選択して、ターミナルから選択したテキストの実行を押しました。

import cv2 import numpy as np import matplotlib.pyplot as plt from matplotlib import cm

試したこと

原因が全く不明なため、手付かずです。

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

windows11
vscode
ptyhonは3.8.5-64bitを使用しました。

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

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

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

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

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

Crimson_Tide

2022/08/29 13:11 編集

(編集:当コメントは一旦無視して頂いて結構です。) ライブラリをインストール方法はそれで結構ですが、ソース(といっても処理らしい処理が見当たりませんが)の実行方法が誤っています。 Pythonソースの実行方法、もしくは折角VSCodeを使用されているのですからVScodeでのPythonの実行方法は検索すればいくらでもありますので、調べた上でご対応ください。 「ターミナルから選択したテキストの実行を押した」という記載は、実行ボタンのようなものをクリックしたかのような印象を受けます。 実際は「ターミナルに該当のテキストを貼り付けることで各行を実行した」のではないでしょうか?
TakaiY

2022/08/29 06:41

エディタ画面上で選択した部分をターミナルで実行する方法(Shift+Enter)もあるので、あながち間違えとは言えないでしょう。 ただ、操作が間違えている可能性があり、「「ターミナルから選択したテキストの実行を押した」」というのがどのような操作なのかよくわかりません。 「ターミナルから選択したテキストの実行を押した」としている操作を詳しく説明してください。 ソースコードのxxxという部分を選択して、yyyにあるzzzと表示されているボタンを押した、など。
Bull

2022/08/29 11:30

メニューの「ターミナル」から「選択したテキストの実行」を選んだと言うことでしょうか? であれば、一度も Python のコードを実行していないと失敗するようなので、選択したテキストを右クリックして「Python ターミナルで選択範囲/行を実行する (Shift + Enter)」を選べばうまくいくかもしれません。
Crimson_Tide

2022/08/29 13:10

>TakaiYさん エラーメッセージからPowerShellのプロンプトでPythonのソースを実行してエラーになった際のものと思われたので、何かしら間違っていると判断しました。 但しその他部分に関しては(Shift+Enter)での実行方法を知らなかったこともあり、見当違いなコメントもしてしまっていそうです。ご指摘ありがとうございます。 >メニューの「ターミナル」から「選択したテキストの実行」を選んだと言うことでしょうか? なるほど、そういうことのような気がしますね。
LNy8xTdKWw

2022/08/29 14:40

メニューの「ターミナル」から「選択したテキストの実行」を選んだということです。 分かりにくい質問になってしまい誠に申し訳ございません。 (Shift+Enter)での実行方法でできそうです。 皆様ありがとうございました。
guest

回答2

0

まず

[ターミナル]-[選択したテキストを実行]でソースを実行する方法は、Pythonターミナルじゃないと質問欄にあるようなエラーが出る

というのを覚えておいてください。

そのため、Pythonのターミナルを起動する方法を説明します。

[1]

細かい違いはあるかもしれませんが、VSCode起動時ターミナルは下記画像のような状態かと思います。
初期画面

恐らく
PS ディレクトリ名 >
といった表示になっています。
これはWindowsのPowerShellというコマンドを受け付けるアプリが起動している状態で、Pythonのターミナルではありません。
この状態で[ターミナル]-[選択したテキストを実行]を実施しても、今回のようにエラーになります。

1.画像のようにPythonのソースが表示されている画面(エディタといいます)で空白じゃない行にカーソルを移動させてください(例:画像では1行目のオレンジ部分)。
(この時点で先頭行から実行させたい行までを選択してもいいですが、一旦は上記手順を試してみてください)

2.Shift+ Enterキーを押すと、[2]の画面になるかと思います。
[2]の画面にならない場合は、後述の[1]-A または [1] - B を試してください。

[2]

これがPythonターミナルが起動している状態です。

Pythonターミナル
最下行に >>> が表示されていれば、Pythonターミナルが起動していると判断できる1つの目安になるかと思います。
細かいパス名などの違いは環境によるものなので気にしなくていいです。[1]を実施したことで新しいターミナルが起動され、黄色文字のpython.exeが自動で実行されたことでPythonのターミナルが表示されている状態です。
(下部右側のpwshが[1]で表示されていたPowerShellのターミナル,次のPythonが今回新たに起動したPythonターミナル、正確にはPowerShellターミナルが起動しPython.exeが実行されたことでPythonターミナルの状態になっています。)

[3]

  1. エディタ上でソースの実行したい箇所を選択
  2. [ターミナル]-[選択したテキストを実行]を選択、もしくはキーボードからShift + Enterキーを押す
  3. 画像下部のように選択部分が実行されると思います。

イメージ説明


[1]を実施し[2]の画面にならなかった場合は、下記の[1]-A もしくは [1]-Bを試したあとに、[3]を実行してください。

[1]-A

1.エディタ上で空白でない行にカーソルを移動、もしくは先頭行から実行したい行まで選択する。
2.右クリックでメニューを表示して[Pythonターミナルで選択範囲/行を実行する Shift+ Enter]を選択する。
3.[2]のようにPythonターミナルが起動するので、[3]を実行。

イメージ説明

[1]-B

1.PowerShell上で pythonと入力し[enter]キーを押下
2.Pythonターミナルが起動するので、[3]を実行。
イメージ説明


注意事項
PythonターミナルはCtrl +Z もしくは exit()で終了できます。
終了後PowerShellに戻りますが、この状態だと[1]のShift+ Enterキーや [1]-A の [Pythonターミナルで選択範囲/行を実行する Shift+ Enter]が動作せずエラーになります。
イメージ説明
この場合は
[1]-Bを実施しPythonターミナルを起動
もしくは、

  1. 下部右側でPythonをクリック
  2. PowerShellターミナル上でexitを入力して、かつてPythonターミナルだったターミナルを終了。
  3. [1]を再度実施してください。

投稿2022/08/29 15:41

Crimson_Tide

総合スコア509

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

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

LNy8xTdKWw

2022/08/30 01:19

ご回答ありがとうございます。 Pythonターミナルで選択範囲/行を実行する方法など大変参考になりました。
guest

0

ベストアンサー

import : 用語 'import' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから 、再試行してください。

上記エラーメッセージはVSCodeのターミナル上で「import」と入力し実行すると表示されます。
そうではなく下記方法でpyファイルを作成してコードを実行しましょう。

VSCodeのファイルメニューから「新しいファイル」をクリックしファイルを作成します。ファイルメニューの名前を付けて保存でpyファイルとして保存します。(ここでは test.py としました。)
イメージ説明
イメージ説明
そこに質問のコードを貼り付けて実行すれば良いでしょう。(右上の▽をクリックする)
イメージ説明

投稿2022/08/29 10:37

meg_

総合スコア10580

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

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

LNy8xTdKWw

2022/08/29 14:25

ご丁寧にありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問