0

関数を介して複数のパラメーターを使用することに固執しています。私は2つのファイルを持っています:

1.py

import function
x=2
y=5
print function.power(x,y)

関数.py

import math
def power(*x)
return math.pow(x,x)

関数に複数のパラメーターを渡そうとするpowerと、次のエラーが発生します。

トレースバック(最新の呼び出しが最後):

ファイル「C:\Examples\1.py」の 33 行目

出力関数.power(x,y)

ファイル "c:\Examples\function.py"、11 行目、power

return math.pow(x,x)

TypeError: float が必要です

4

2 に答える 2

3

私はあなたが欲しいと思います:

def power(*x):
    return math.pow(*x)

これは、引数のアンパックの形式です。power関数内でxは、tuple別の関数に渡されたときにアンパックできる です。

于 2013-01-31T05:17:29.803 に答える
0

それ*xは実際にxリストを作成しているからです。

あなたは本当になりたいですfunction.py

import math
def power(*x)
    return math.pow(x[0],x[1])

なぜあなたは本当にこれを行う方法を知りたいのですか?明らかに、関数を無意味にラップすることはできませんmath.pow

于 2013-01-31T06:27:58.460 に答える