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

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

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

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Python

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

Q&A

3回答

3975閲覧

VSCODEでPythonコードが動かない

mikomikomuscle

総合スコア2

Visual Studio Code

Visual Studio Codeとは、Microsoft社が開発したマルチプラットフォーム対応のテキストエディタです。Visual Studioファミリーの一員でもあります。拡張性とカスタマイズ性が高く、テキストエディタでありながら、IDEと遜色ない機能を備えることができます。

Python

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

0グッド

0クリップ

投稿2022/03/16 17:26

本当に初学者でもうしわけないのですが質問させてください。
下記のコードをIDELで動かすと全く問題なく動作するのですが、
VSCODEで動かすとエラー表記が出てしまいます。

色々調べてみたのですが通常VSCODEを使用していると画面左下に使用しているインタープリター
(例えばPython3.10.2)が表示されるようなのですが、現状私の画面にはそういった表示がありません。
インタープリターを選択、というのも試してみたのですが改善されません…
やはり原因はインタープリターが選択されていないことが原因でしょうか。
何かわかることがあれば教えていただけると助かります。
どなたかよろしくお願いいたします。

●エラー内容

Traceback (most recent call last): File "/Users/ユーザー名/Desktop/Head First Python/第一章/random.py", line 3, in <module> import random File "/Users/ユーザー名/Desktop/Head First Python/第一章/random.py", line 11, in <module> verb = random.choice(verbs) AttributeError: partially initialized module 'random' has no attribute 'choice' (most likely due to a circular import

●使用したコード

# ランダム機能を使うことをPythonに知らせるために # randomモジュールをインポートする import random # 3つのリストを作成する。動詞のリスト、形容詞のリスト、名刺のリスト verbs = ['Leverage', 'Sync', 'Target','Gamify', 'Offline'] adjectives = ['A/B Tested', 'Freemium', 'Hyperlocal', 'Siloed','Oriented'] nouns = ['Earlu Adopter', 'Low-hanging Fruit', 'Pipeline', 'Splash Page'] # リストから動詞、形容詞、名刺をそれぞれ一つ選ぶ verb = random.choice(verbs) adjective = random.choice(adjectives) noun = random.choice(nouns) # 単語をつなぎ合わせてフレーズを作る phrase = verb + ' ' + adjective + ' ' + noun # フレーズを出力する print(phrase)

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

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

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

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

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

Bull

2022/03/17 02:42

回答ではないので、ここに書きます。 > 色々調べてみたのですが通常VSCODEを使用していると画面左下に使用しているインタープリター (例えばPython3.10.2)が表示されるようなのですが 最近のバージョンでは、左下ではなく右下に表示されるようです。
guest

回答3

0

AttributeError: partially initialized module 'random' has no attribute 'choice' (most likely due to a circular import

randomモジュールにはchoiceと言う名前のアトリビュートはありません。
とおっしゃってます。

インタプリタの設定は関係ないようですが。

#もしかして、ファイル名をrandomにしたりしてません?

投稿2022/03/16 23:38

編集2022/03/16 23:40
y_waiwai

総合スコア87774

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

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

y_waiwai

2022/03/17 00:21

> ファイル名はrandom.pyという名前で保存しています。 それしてしまうと、random と言うモジュール名は自分自身を指してしまいため、本来のrandomが使えなくなります。 ファイル名を別の名前にしよう
guest

0

色々調べてみたのですが通常VSCODEを使用していると画面左下に使用しているインタープリター(例えばPython3.10.2)が表示されるようなのですが

多分これはインタープリンターではなくてターミナルだと思います。
vscodeのメニューにターミナルというタブがあると思います。
そこから新しいターミナルというのを選ぶと、まずイメージされているような黒い画面が下側に出ると思います。
そのターミナル上でpythonと打つと、インタープリンタ(pythonとの対話モード)になるのですが、対話モードではファイルを実行できません。
ターミナルでは、lsコマンドでディレクトリを確認したりcdコマンドを使用して実行したいファイルのある場所に異動してそこでpython PROGRAMFILE.pyを実行することでファイルが実行できると思います。

今回の場合だと、多分ターミナル上でcd Desktop/'Head First Python'/第一章で第一章のフォルダに移動、その後、python random.pyでファイルを実行できると思います。
ただ、ターミナルはコマンドを知らないと使いにくいので、慣れないうちはIDEの方が便利かと思います。

あとはすでに回答あると通り、実行しようとしているファイル名がrandomになっていることが気になります。
random.pyはPythonの公式がデフォルトで用意しているライブラリの名前と完全一致します。
pythonは確か最初にディレクトリ内にimportで指定したファイルがあるか確認した後に、pythonのライブラリ群に指定したimportファイルがあるか確認しに行くはずです。
ファイル名をapp.pyに変えて実行してみてはいかがでしょうか?

投稿2022/03/17 00:17

YuuT

総合スコア673

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

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

0

ファイル名はrandom.pyという名前で保存しています。

投稿2022/03/17 00:10

mikomikomuscle

総合スコア2

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

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

y_waiwai

2022/03/17 00:25

> ファイル名はrandom.pyという名前で保存しています。 それしてしまうと、random と言うモジュール名は自分自身を指してしまいため、本来のrandomが使えなくなります。 ファイル名を別の名前にしよう
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問