0
num_trades = int(input("Number of trades for today? "))
for i in range(1, num_trades + 1):
    print()
    action = input("Trade number", i, "(buy/sell)? ")
    num_shares = int(input("Number of shares to buy? "))

私はTypeErrorオンラインになっています、"action = input("Trade number", i, "(buy/sell)? ")"

このエラー メッセージには " TypeError: input expected at most 1 arguments, got 3"と表示されます

意味がわからず、直し方がわからない。ヘルプ

ありがとう

4

4 に答える 4

5

に 3 つの引数を渡していますinput():

action = input("Trade number", i, "(buy/sell)? ")

必要なのは 1 つだけです。print()複数の引数のみを取ります。文字列フォーマットを使用:

action = input("Trade number {} (buy/sell)? ".format(i))

または文字列連結を使用します。

action = input("Trade number " + str(i) + " (buy/sell)? ")

iただし、明示的に文字列に変換する必要があります。

于 2013-09-05T06:45:35.220 に答える
1

これは、3 つの引数で入力を呼び出しているためです。

使用する

input("Trade number " + str(i) + " (buy/sell?")

代わりは

于 2013-09-05T06:46:12.330 に答える
0

この関数は引数を 3 つではなく 1 つだけ取っています。

num_trades = int(input("Number of trades for today? "))
for i in range(1, num_trades + 1):
print()
action = input("Trade number " + str(i) + " (buy/sell)? ")
num_shares = int(input("Number of shares to buy? "))
于 2013-09-05T06:54:32.673 に答える
0

エラーは、何が間違っているかを正確に示しています。input関数は 1 つの引数を想定していますが、3 つ指定しました。

それ以外の

input("Trade number", i, "(buy/sell)? ")

試す

input("Trade number " + str(i) + " (buy/sell)? ")

コンマで区切ることで複数のことを行うことができるため、おそらく混乱printしていますが、99% の場所では機能しません。 inputでは、文字列引数を 1 つ指定する必要があり、そこにコンマを配置することで、3 つの引数を指定したことになります。私の提案では、これら 3 つの文字列を 1 つに連結し、それを に渡しましたinput

于 2013-09-05T06:46:14.550 に答える