e-qual-m0204
@e-qual-m0204

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

input関数のエラー解決方法について教えて下さい

解決したいこと

Pythonの超初心者です。
input関数を書いて実行するとエラーが出てしまい入力がうまく出来ません。
解決方法を教えて頂けないでしょうか?

発生している問題・エラー

import random
yosou = int(input('入力>>>'))
deme = random.randint(1,6)

これを実行すると、

import random
yosou = int(input('入力>>>'))
入力>>>deme = random.randint(1,6)
Traceback (most recent call last):
File "", line 1, in
ValueError: invalid literal for int() with base 10: 'deme = random.randint(1,6)

input関数の次の行に書いていることが勝手に入力されてしまっているようです。

実行環境について

Python 3.10.6
Visual Studio Code を利用しています

調べたときに出てきた記事

https://teratail.com/questions/90946
https://blog.kikagaku.co.jp/python-basic-error
検索して出てきたサイトは一通り見たのですが、解決出来ませんでした。

自分で試したこと

import random

yosou = int(input('入力>>>'))
2
deme = random.randint(1,6)

これで実行すると、

import random
yosou = int(input('入力>>>'))
入力>>>2
deme = random.randint(1,6)

となり、エラーは出ませんでした。
きちんと入力できるようにするにはどのようにしたらよいのでしょうか?
ご教授のほど、どうぞよろしくお願い致します。

0

3Answer

ターミナルにコードを貼り付けていませんか?
折角VSCodeを使っているので*.pyファイルから実行できる環境を整えましょう.

0Like

Comments

  1. @e-qual-m0204

    Questioner

    コメント頂きありがとうございます!
    対話モードにして,ctrl+zで全体を選んでshift+enterで実行するとこのエラーが出るのですが、これは私のやり方がおかしいのでしょうか?
    他のプログラムはこのやり方で動くのですが、input関数の時にだけこのようなエラーが出てしまい悩んでいます。
  2. ファイルからであれば通常Ctrl+F5で動作させます.
    対話モードは本来簡潔なコードを1行ずつ入力していくモードですので,複数行のプログラムを一気に動作させる際は不向きです.

Comments

  1. @e-qual-m0204

    Questioner

    コメントありがとうございます!
    1行ずつ実行した場合は123などの数値も入力でき問題なく動くのですが、ctrl+zで全体を選んでshift+enterで実行するとこのエラー出てしまい、数値の入力も出来ない状態です。
  2. なるほど、なぜ全体を選ぶんでしょうか?
  3. @e-qual-m0204

    Questioner

    他のプログラムを実行するときは全体を選んで実行しても今のところ問題なく動くので、今回も同じように全体を選んで実行してみたという感じです。
    これだけエラーが起こるのでなぜだろう?と思って質問させて頂きました。
    おかしな事を質問しているのでしたら申し訳ありません。m(_ _)m

質問文に詳細がありませんでしたが Vs Code の「対話型ウィンドウで選択範囲/行を実行」でのエラーということですか?
入力値として 'deme = random.randint(1,6) みたいなコードを入力してませんか?

image.png

0Like

Comments

  1. @e-qual-m0204

    Questioner

    「対話型ウィンドウで選択範囲/行を実行」でのエラーです。説明が足りず失礼しました。
    ご指摘の通りなのですが、入力値に「deme = random.randint(1,6) 」が勝手に入ってしまいます。
    私としては、全体を選んで実行すると、「入力>>>」という文章が出てきて、自分で数値や文字を入力出来ると考えているのですが、それは間違いでしょうか?
    分かりにくい文章で申し訳ありません。
  2. 何度やっても同じ問題が起こりますか?
    それならVsCodeの問題だと思うのでとりあえず他方法で実行してはいかがでしょう
    (コンソールから実行とか)

    自分で数値・文字を入力できるのが正しい動作のはずです



  3. @e-qual-m0204

    Questioner

    何度やっても同じエラーが起こります。
    分かりました。他の方法で実行するようにします。
    何度もご丁寧にアドバイスをして下さり、本当にありがとうございました。

Your answer might help someone💌