どうやってPythonコードで逆関数を計算しますか
逆関数は、元の関数の出力をインプットとして、元の関数のインプットを出力とする関数のことです。Pythonでは、逆関数を計算する関数を定義できます。
以下にサンプルコードを示します:
def inverse_function(f):
def inverse(x):
# 遍历所有可能的输入值
for i in range(-100, 101):
# 如果计算出的 f(i) 等于 x,则返回 i
if f(i) == x:
return i
# 如果没有找到匹配的输入值,则返回 None
return None
return inverse
このコードでは、`inverse_function`関数は関数`f`をパラメータとして受け取り、新しい関数`inverse`を返します。新しい関数は`f`の逆関数として使用できます。
逆関数のなかで、可能な入力値(ここでは -100 から 100 の範囲にあると仮定する)をすべて試して、それら一つ一つに対して出力値を計算する。もし計算によって得られた出力値が、与えられた入力値 x と同じなら、それに対応する入力値 i を返す。一致する入力値が見つからなければ、None を返す。
このコードを使用して関数の逆関数を定義できます:
def square(x):
return x ** 2
inverse_square = inverse_function(square)
print(square(4)) # 输出:16
print(inverse_square(16)) # 输出:4
この例では、平方を求める関数squareを定義した後、inverse_function関数を用いてその逆関数inverse_squareを求めています。最後に、2つの関数をそれぞれ呼び出して、正しさを検証しています。