Posts tagged rapidinha

Medindo tempo de execução com o TIME

Relógio de Bolso

O time é um comando que você pode usar para determinar quanto tempo um determinado comando levou para ser executado.

Você encontra o time em qualquer Linux, mas é importante saber que existe o time pode está embutido no terminal que você está usando e/ou pode ser encontrado no /usr/bin. O time que você deve está procurando é o /usr/bin/time.

Vou mostrar um exemplo de quanto tempo o wget levará para acessar este site e baixar uma página.

/usr/bin/time -p wget -nv www.eupodiatamatando.com

Usei o parâmetro -p para o time dar uma saída amigável. O que vem a direito daí já é o comando em si. A saída para essa linha de comando é algo assim:

real 2.98
user 0.00
sys 0.00

Real, é o tempo que levou de verdade, quase 3 segundos, algo como o que você mediria num cronometro. User, o tempo de kernel que ele utilizou. Sys, o tempo de cpu utilizado. Claro que nenhum levou de fato tempo 0, isso é um erro para valores muito pequenos.

Para programas que levaram muito tempo para terminar é útil você direcionar a saída do time para um arquivo, mas não é fácil fazer isso com os pipes. Eis uma solução do próprio time:

/usr/bin/time -p -o /tmp/tempo time 10 &

O comando time 10 vai demorar 10 segundos para acabar, o time vai cronometra-lo e guardar a saída no arquivo /tmp/tempo. O símbolo & no final da linha de comanda deixa todo o comando em background deixando você livre para deslogar enquanto o programa é executado.

Isso é muito útil quando se precisa medir o tempo de execução de um programa que vai levar horas (ou dias!) de execução e você precisa deixar a máquina livre para que outros usuários usem.

Relógio Se essa solução não te serviu experimente uma mais old scholl. Aproveite e compare preços de relógios de todos os tipos no Buscapé.

Split, comando Python para dividir strings.

Python cobra

Eis um comando que pode ser muito útil em diversas situações de manipulação de strings.

O comando split recebe como parâmetro um caractere separador e um número máximo de pedaços (opcional).

Ele retorna uma lista de strings, são os pedaços da string original divididos pelo separador. Ele não altera a string original.

Exemplo:

>>> 'www.eupodiatamatando.com'.split('.')
['www', 'eupodiatamatando', 'com']
>>> '19:16:23'.split(':')
['19', '16', '23']
>>> hora, minuto, segundos = '19:16:23'.split(':')
>>> hora
'19'
>>> minuto
'16'
>>> segundos
'23'

Livros Python Promoção! Livros de Como Programar em Python pelos menores preços você encontra no Buscapé.