現在、数値を求める関数を作成しようとしています。 raw_input()関数を使用して入力を取得する予定です。私はPythonでそれを入力し、それを実行した場合、このプログラムは動作しますが、私はPowerShellでそれを実行すると、私は次のエラーが表示されますPythonプログラムはIDLEで動作しますが、コマンドライン(PowerShell)では動作しません
>>> python ex19.1.py
What is your number? 34
Traceback (most recent call last):
File "ex19.1.py", line 13, in <module>
is_prime(number)
File "ex19.1.py", line 5, in is_prime
if n % 2 == 0 and n > 2:
TypeError: not all arguments converted during string formatting
私は現在のPython 2.7を実行している、と私は「なぜ私はわからないんだけど私は自分のコードで文字列フォーマッタを使用しないので、文字列エラーを受け取る。以下は私のプログラムに使用しているコード、ex19.1.pyです。
import math
def is_prime(n):
if n % 2 == 0 and n > 2:
return False
for i in range(3, int(math.sqrt(n)) + 1, 2):
if n % i == 0:
return False
return True
number = raw_input("What is your number? ")
is_prime(number)
私の質問は、なぜこのエラーが発生しているのですか、それを修正するために何ができますか?ありがとう!