тестирование Python (командная строка) - PullRequest
0 голосов
/ 21 сентября 2018

У меня есть программа на Python 3.6, которую я сделал для запуска в Linux.Мне нужно было узнать, сколько процессора, памяти и т. Д. Потреблялось при его выполнении (в командной строке), не могли бы вы мне помочь?

Спасибо

Примечание. Извините за тегииспользовал, я не был уверен, какие из них поставить

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018

Для синхронизации отдельных строк вы можете использовать магическую функцию питона %timeit.(Вы также можете рассчитать время для нескольких строк, однако это даст результат для полного выполнения, а не для каждого оператора)

Однако для подробного описания вы можете использовать cProfile.Вы можете прочитать описание здесь .

Пример кода, который может вам помочь:

[sample.py]

import time
print('Hello!')
time.sleep(2)
print('Thanks for waiting!')

cProfile может помочь вампрофиль вашей программы написан в sample.py.Запустите файл python, как показано ниже, из терминала Linux.

user@this-pc$ python3 -m cProfile sample.py 

Вывод:

Hello!
Thanks for waiting!
         6 function calls in 2.001 seconds

   Ordered by: standard name

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
        1    0.000    0.000    2.001    2.001 sample.py:1(<module>)
        1    0.000    0.000    2.001    2.001 {built-in method builtins.exec}
        2    0.000    0.000    0.000    0.000 {built-in method builtins.print}
        1    2.001    2.001    2.001    2.001 {built-in method time.sleep}
        1    0.000    0.000    0.000    0.000 {method 'disable' of '_lsprof.Profiler' objects}

Надеюсь, это поможет вам.

Приветствия!

0 голосов
/ 21 сентября 2018

Для базовых экспериментов вы можете использовать %timeit с интерпретатором ipython.Для высокоточных низкоуровневых - perf.Для всего промежуточного есть статья специально по этой теме в документации .

...