-5

ユーザー入力を受け取り、それをさまざまなコマンド文字列と比較するプログラムを書いています。プログラムを実行しようとするとSyntaxError、行についてのif method = 'addition':メッセージが表示され、IDLE は=を赤で強調表示します。

num1 = input('Enter your first value: ')
num2 = input('Enter your second value: ')
method = input('Which method will you be using? ')

if method = 'addition':
    solveFor = num1 + num2
elif method = 'subtraction':
    solveFor = num1 - num2
else:
    print("Please enter 'addition' or 'subtraction'")
4

3 に答える 3

7

Python の等価比較演算子は==. =変数に値を代入するステートメントです。

あなたのコードには他にも多くのエラーがあります (未定義の名前num1num2で始まり、最初は何もしていません)。Python チュートリアルを読んで、 Python 構文の基本を理解する必要があります。

于 2012-10-06T05:19:25.080 に答える
4

いくつかのヒントを次に示します。

  • Python は動的に型付けされるため、他の言語のように変数を宣言する必要はありません。したがってnum1、スクリプトの先頭に記述する必要はありません。
  • 単一の等号は値の設定に使用され ( a = 2)、二重の等号は値の比較に使用されます ( if a == 2:)。
  • if, elseandelifステートメントの後にはコロンを配置する必要があります。
  • Python ではインデントが重要です。

あなたは基本的な Python の知識が不足しているようで、適切な Python チュートリアルを実際に読む必要があります。このオンラインブックが良いと言われました: http://learnpythonthehardway.org/book/

参考までに、コードの修正バージョンを次に示します。

print "Welcome to PyCalcBasic"

num1 = input("Enter your first value")
num2 = input("Enter you second value")
method = raw_input("Which mathematical operator will you be using?")

if method == "addition":
    solveFor = num1 + num2
elif method == "subtraction":
    solveFor = num1 - num2
else:
    print ("Please enter 'addition' or 'subtraction'")
于 2012-10-06T05:35:09.327 に答える
0
  1. シングルイコール=は割り当て、ダブルイコール==は等価テストです
  2. ifor ステートメントの条件の後、またはelifステートメントの後にコロンが必要です。else
于 2012-10-06T05:19:38.963 に答える