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

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

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

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Python

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

Q&A

解決済

1回答

2220閲覧

Vidual Studio codeでのpythonが不安定で、同じエラーコードが吐かれる。まともに動かしたい。

lovecavs

総合スコア1

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Python

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

0グッド

1クリップ

投稿2020/05/11 09:42

編集2020/05/11 14:13
コード ```### 前提・実現したいこと 初質問です。 1ヶ月前からpythonの勉強を始めた者です。はじめはpythonでコードを書いていましたが、vscが便利と聞いて環境構築を行ったところファイルによって動くものと,エラーを吐くものがあり自己解決が不可能と判断。 下記のエラーが出ないときはまともに動作するため、このエラーを解消したい。 ### 発生している問題・エラーメッセージ rps : 用語 'rps' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行し てください。 ### 該当のソースコード ```import random n=1 win=0 lose=0 even=0 def rps(player_hand): global win,lose,even,n print('----------',n,'回戦----------') if player_hand == 'g': player_hand=0 elif player_hand == 'c': player_hand=1 elif player_hand == 'p': player_hand=2 else: return('正しく入力できていません') n+=1 enemy_hand=random.randint(0,2) if enemy_hand==player_hand: even+=1 return('お互い',player_hand,'なのであいこ') elif player_hand==0 and enemy_hand==1 or player_hand==1 and enemy_hand==2 or player_hand==2 and enemy_hand==0: win+=1 return('あなたの勝ちです') else: lose+=1 return('あなたの負けです') def rate(): return ('勝ち数',win,'負け数',lose,'あいこ数',even,'よってあなたの勝率は',win/n*100,'%です。') rps('g')

実行中に
rps('g')
と入力するとあいこ、勝ち、負けのいずれかの結果が表示されるように作りました。
pythonで実行するとそのように動きます。

追記
最後にrps('g')を追加したところ、print('----------',n,'回戦----------')の部分のprintされ、処理の確認のために変数を直打ちしたところ(win,lose,even等)同じエラーが出てきて確認ができませんでした。下部の関数rate()も同様です。

Python

試したこと

pathの確認
pythonの再インストール
vscの再インストール
コマンドプロンプトのターミナル作成(これを行うと直ったという事例をみたため)

vscのバグとの記事を見かけましたが、その真偽及び対策方法はわかりません。

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

python 3.8.2
vidual studio code 最新版
windows10

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

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

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

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

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

x98000

2020/05/11 10:13

どのようにエラーを発生させましたか?関数rpsを呼び出すコードが無いので判断できません。 なお、ソースコードを記載する場合は「コードの挿入」を押して「コード」と書かれた部分を置き換える形で入力してください。
x98000

2020/05/11 13:21

> 実行中に > rps('g') > と入力するとあいこ、勝ち、負けのいずれかの結果が表示されるように作りました。 と追記されましたが、この方法が間違っていると思われます。 同じソースコードの最後に rps('g') を追記して保存、実行した場合はどうですか? また繰り返しになりますが、ソースコードは「コードの挿入」を押して「コード」と書かれた部分を置き換える形で入力してください。既に記載されている部分も修正できます。
lovecavs

2020/05/11 14:19

コード挿入の件、勉強不足でした。 追記にも書かせていただきましたが、コード内のどんな変数を実行中に入力しても同じエラーが吐かれます。いくつか正常に動くコードファイルもあるため、正直混乱しています。
x98000

2020/05/11 14:26

まず、処理結果は想定どおりでしょうか。 また、「処理の確認のために変数を直打ちしたところ」とありますが、これはどこに打ったのでしょうか。
lovecavs

2020/05/11 14:51

print('----------',n,'回戦----------') ここに関しては想定通りです、ですが本来のruturn の処理が表示されません。return処理が表示されないのはセオリーなのでしょうか。 変数は実行中に打ちました。
x98000

2020/05/11 14:57

returnの結果が表示されないのは、そのためのコード(print等)が無いためです。勝手には表示されません。 > 変数は実行中に打ちました 繰り返しになりますがVSCodeウインドウの「どこに」打ちましたか? ターミナルウインドウですか?デバッグコンソールですか?ソースコードウインドウですか?
guest

回答1

0

ベストアンサー

「pythonスクリプトを実行する」ことと「変数の値を確認する」ことがごっちゃになっているようです。
通常VSCodeで実行した場合、実行後にターミナルウインドウで変数の内容を確認することはできません。
これはpowershellコンソールで動かした場合と同じです。

変数の内容を確認したい場合は、pythonをインタラクティブモードで起動して1行ずつ実行するか、VSCodeのデバッグ機能を使ってブレークポイントの設定やウオッチ式の追加、デバッグコンソールでのチェックを行います。

また、対話形式で逐一確認することを目的とするならばjupyter notebook(強力な対話実行環境)を使ったほうがいいかもしれません。調べてみてください。

投稿2020/05/11 15:21

x98000

総合スコア1096

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

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

lovecavs

2020/05/11 17:15

vscode の機能をよく理解しないまま使っていたようです。もう少し自分にあった環境でやり直してみます。拙い質問に答えていただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問