こんにちは、パイソン - (?)ブール条件とエラー
私は、合計値が返されるかどうかを確認するためにreturn_3、return_6とreturn_9を取得しようとしていますall_return_values_funcは20を超えています。問題は、スクリプトを実行するとreturn_3が即座に印刷されることですs "返される値の総数が高すぎます"。
はどのようにall_return_values_func/RETURN_VALUEが実行された20の上方初めてreturn_3あるものとして計算してきますか?
スクリプトのポイントはreturn_3/return_6/return_9スクリプトのそれぞれから行くと、これらの機能のそれぞれが all_return_values_func機能に追加し、機能値が後であれば機能RETURN_VALUEで20の上にチェックされていることを確認することです
from sys import exit
import time
def all_return_values_func():
combined_return_values = return_3() + return_6() + return_9()
return combined_return_values
def return_value(i):
if i > 20:
print "The value is above 20"
time.sleep(2)
exit()
def return_3():
return_value(all_return_values_func)
print "Returns integer value: 3 and then jumps to function: return_6"
time.sleep(2)
return_6()
return 3
def return_6():
return_value(all_return_values_func)
print "Returns integer value: 6 and then jumps to function: return_9"
time.sleep(2)
return_9()
return 6
def return_9():
return_value(all_return_values_func)
print "Returns integer value: 9"
time.sleep(2)
return_3()
return 9
return_3()
乾杯、
サイモン
'return_value(all_return_values_func)'は、関数 'all_return_values_func'を' all_return_values_func() 'の戻り値ではなく' return_value'に渡しています。 – Galen
これは動作する方法がありません:P 1: 'return_value(all_return_values_func)' - 関数参照を渡していますか?その後 ?これを数と比較する。 ここで再帰の回数は非常に高いですか?すべての関数は 'all_return_values_func'を呼び出すでしょうか?それはまた自分自身を呼びますか? –
"xを返してから関数yにジャンプする"というのは、Pythonで起こりうることではありません。 – TemporalWolf