Ich benutze Python 2.4 in einer Game Engine und möchte alle Drucke bei Bedarf ausschalten können. Zum Beispiel möchte ich die Drucke für einen Debug-Build haben und dann für einen Release-Build deaktiviert. Es ist auch wichtig, dass es so transparent wie möglich ist.Was ist der beste Weg, um Python-Drucke umzuschalten?
Meine Lösung für diese in der C-Code der Engine ist die printf
-Funktion in einem Makro, und definieren, dass nichts in einem Release-Build zu tun.
Dies ist meine aktuelle Lösung:
DebugPrints = True
def PRINT (*args):
global DebugPrints
if DebugPrints:
string = ""
for arg in args:
string += " " + str(arg)
print string
Es macht es einfach Ausdrucke zu wechseln, aber es gibt möglicherweise einen besseren Weg, um die Zeichenfolge zu formatieren. Mein Hauptproblem ist, dass dies tatsächlich eine Menge mehr Funktionsaufrufe zum Programm hinzufügt.
Ich frage mich, ob es etwas gibt, was Sie tun können, wie das Schlüsselwort print funktioniert?
statt der for-Schleife, können Sie 'print "" .join (args)' –
oops, das sollte Druck gewesen sein "" .join (Karte (str, args)) –
Immer noch mit 2.4? –