2017-10-23 10 views
-1

私は、関数内の計算で使用される変数値として 'user entered'引数の使用に関するいくつかの入力を期待していました...これは間違いなく非常に単純な問題になるだろうが、私はPythonには新しく、これまでのところ修正しようとする試みには欠陥があった。 この関数は、新しく生徒を関数に導入するためだけに2つの数値を加算する簡単な計算です。 ハードコードされた値を整数(この例のコードに含まれています) に送りますが、実際にプログラムを実行しているときに 'ユーザー入力'の引数値を渡そうとすると、この関数は単純に2つの値を加算するのではなく、連結します。これは入力値が '文字列'の形式であるためです(私は仮定します)。python ...計算で使用するために 'user entered'関数の引数を整数に変換する方法

引数変数コード内の 'input'ステートメントの後に 'int'ステートメントを導入しようとしましたが、これは 'int()'の無効なリテラルになります。これも関数コード自体の異なるポイント運がないので.....計算前または計算中に値が整数として認識されるようにするにはどうすればよいですか?ユーザーは整数値のみを入力した場合、正しく動作するはずのおかげ

def getSum(num1, num2): 
    calc = num1 + num2 
    return calc  

num1 = input("Type in your first number to add: ") 
num2 = input("Type in your second number to add: ") 


result1 = getSum(num1, num2) 




answer = getSum(10, 5) 
answer2 = getSum(155, 56668) 



print(answer) 
print(answer2) 
print(result1) 
+1

私はこれら 'int'文が表示されない、それらを表示してください「*私は『入力』文は*の後に「int型のステートメントを導入しようとしています」。 –

+1

なぜint(input( "Type ..."))があなたにとってうまくいかないのですか?何が問題ですか?例外はありますか? – inxoy

+0

@inxoyが言ったことに従えば、ユーザーがいくつかの非整数を入力するとエラーになることがわかります – tburrows13

答えて

0

INT() - そうでなければ、tryおよびcatchブロックでそれをラップする必要があり

try: 
    num1 = int(input("Type in your first number to add: ")) 
    num2 = int(input("Type in your second number to add: ")) 
catch Exception as ex: 
    pass //do nothing 
+0

私はこれを行い、 :)私は底部(過去のすべては 'Exception catch'を除く)を含んでいませんでしたが、 'int'と 'input'ステートメントをスワップするだけで済ませました......感謝しますinxoy –

0

だけNUM1とNUM2のためのint型()を導入2行目。 だから、新しいコードは次のようになります。

def getSum(num1, num2): 
    calc = int(num1) + int(num2) 
    return calc  

num1 = input("Type in your first number to add: ") 
num2 = input("Type in your second number to add: ") 


result1 = getSum(num1, num2) 




answer = getSum(10, 5) 
answer2 = getSum(155, 56668) 



print(answer) 
print(answer2) 
print(result1) 
+0

ありがとうMukul ....将来の機能のためにこのオプションを念頭に置いていきます –

関連する問題