Ich kann anscheinend nicht timeit.timeit
zum arbeiten bringen, wenn ich Ausnahmen in dem als String übergebenen Anweisungsargument habe:
Dies führt zu:
%Vor%Ich führe es mit Python 3.3, aber der gleiche Fehler passiert sogar mit dem alten Python (3.2).
UPDATE:
Ich folgte dieser Dokumentation (Hervorhebung von mir):
class time it.Timer (stmt = 'pass', setup = 'pass', timer =)
Klasse für die Timing-Ausführungsgeschwindigkeit kleiner Code-Snippets.
Der Konstruktor nimmt eine zu terminierende Anweisung, eine zusätzliche Anweisung verwendet für die Einrichtung und eine Timer-Funktion. Beide Anweisungen sind standardmäßig auf 'bestehen'; Die Timerfunktion ist plattformabhängig (siehe Modul doc Zeichenfolge). stmt und setup können auch mehrere getrennte Anweisungen enthalten durch; oder Zeilenumbrüche, solange sie keine mehrzeilige Zeichenfolge enthalten Literale.
Sie müssen korrekt eingerückten Code mit Zeilenumbrüchen und nicht mit Semikolons versehen. Versuchen Sie es wie folgt zu ändern:
%Vor%Obwohl dies besser lesbar ist als:
%Vor%Semikolons eignen sich gut zum Trennen von Anweisungen, die die gleiche Einrückungsstufe haben. Leerzeichen oder Tabulatoren zwischen Semikolon und der nächsten Anweisung werden jedoch ignoriert, sodass Sie sie nicht mit Einrückungen verwenden können.
Dies ist ein alter Thread, aber es könnte ein Update wert sein. Eine weitere Option, die textwrap verwendet, um die Lesbarkeit zu verbessern, indem Code eine grundlegende Ebene der Einrückung ermöglicht:
%Vor%