これの出力は何ですか?出力が表示されますが、なぜそれが起こるのか理解できません。
def multiple(x,y):
mul = x*y
return mul
x=int(raw_input("Enter value 1 ")),
y=int(raw_input("Enter value 2 "))
print multiple(x,y)
これの出力は何ですか?出力が表示されますが、なぜそれが起こるのか理解できません。
def multiple(x,y):
mul = x*y
return mul
x=int(raw_input("Enter value 1 ")),
y=int(raw_input("Enter value 2 "))
print multiple(x,y)
あなたのコードで,
は、最初のraw_input
手段の最後にあるx
は、実際にtuple
はユーザー入力を含む です。関数を呼び出すと、実際に行っているのは、タプルに整数を掛けることです。これは、タプルを ( x
)y
倍するだけです。
例えば:
>>> x = 2,
>>> x * 5
(2, 2, 2, 2, 2)
>>> x = 2
>>> x * 5
10
コンマはx
、サイズ 1 のタプル (int を含む) と等しくなります。
簡単なテスト:
>>> a = 1,
>>> print a
(1,)
これに関する大きな誤りは、x と y が数値 (別名文字列) でない場合、関数が混乱することです。これは次のように修正できます:
try:
mul = float(x) * float(y)
x または y が数値でない場合をキャッチするには、
except TypeError:
print('Please do not give a string...')
この場合、mul が無効であることを示したいので
、try ステートメントと except ステートメントに沿って次のように言いmul = None
ます。return mul
.
これにより、入力が文字ではなく小数点数であることが保証されます。
まず最初に、と呼ばれる関数を定義します。この関数はand (のパラメータ) をmultiple
乗算し、その値を返します。次に、2 つの異なる変数の入力を受け取り(上記のパラメーターとは異なります)、乗算し ( を呼び出して)、それらを出力します。これが出力として表示されます。x
y
multiple
x
y
multiple
print
ただし、カンマは単にx
タプルとして定義します。