Encontré esta pregunta y respuesta aquí en StackOverflow.¿Cómo se sincroniza el tiempo de ejecución de un lote de código en Python?
Python - time.clock() vs. time.time() - accuracy?
Aquí hay un código que estoy tratando de ejecutar:
import sys
import time
import timeit
if (len(sys.argv) > 1):
folder_path = sys.argv[1]
if not os.path.isdir(folder_path):
print "The folder you provided doesn't exist"
else:
print_console_headers()
rename_files_to_title_case(folder_path)
#start the timer.
#do some freaky magic here.
#end the timer.
else:
print "You must provide a path to a folder."
def print_console_headers():
print "Renaming files..."
print "--------------------"
return
def rename_files_to_title_case():
"""this is just for testing purposes"""
L = []
for i in range(100):
L.append(i)
if __name__ == '__main__':
from timeit import Timer
t = Timer("test()", "from __main__ import test")
print t.timeit()
¿Cómo me timeit dar una función con un parámetro que se ha guardado en otro lugar?
Esto es algo que he escrito en Ruby que me dio resultados en código limpio, tal vez esto ayude con sugerencias.
start_time = Time.now
folder_path = ARGV[0]
i = 0
Dir.glob(folder_path + "/*").sort.each do |f|
filename = File.basename(f, File.extname(f))
File.rename(f, folder_path + "/" + filename.gsub(/\b\w/){$&.upcase} + File.extname(f))
i += 1
end
puts "Renaming complete."
puts "The script renamed #{i} file(s) correctly."
puts "----------"
puts "Running time is #{Time.now - start_time} seconds"
[ 'timeit 'utiliza' time.clock() 'en Windows] (http://hg.python.org/cpython/file/2.7/Lib/timeit.py#l70). 'from timeit import default_timer como temporizador; start_time = timer(); ... 'permite cambiar entre' time.time() 'en * nix y' time.clock() 'en Windows automáticamente o más tarde Podría usar [' time.walltime() '] (http: // bugs. python.org/issue10278). – jfs
@ J.F.Sebastian: No creo que el OP esté buscando la funcionalidad de 'time.clock()', por lo que no creo que 'timeit' sea una elección adecuada. –
En Windows 'time.clock()' mide walltime, es decir, su comentario: * "informa la cantidad de tiempo de CPU utilizada por su proceso solamente."* puede ser incorrecto. – jfs