Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: Как засекать время в питоне, если я хочу замерить время выполнения моего кода?

  1. Как засекать время в питоне, если я хочу замерить время выполнения моего кода?

    Ребята, привет! Учусь программировать на Питоне и решил проверить, сколько времени занимает выполнение одной из моих функций. Видел, что есть несколько способов засекать время в питоне, например, через time или datetime, но так до конца и не разобрался. Есть еще какие-нибудь примеры кода или подсказки, как это лучше сделать? Интересовали бы быстрые результаты замеров в секундах и миллисекундах. А еще, что выбрать - time или datetime? Чего им вообще все так помешаны на этих таймерах? Кто что посоветует?



  2. Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat

    А ТАКЖЕ: Канал о Python, статьи и книги ==>>
    @pythoneer_ru

  3. Привет! Ну, самый простой и популярный вариант — это использовать модуль `time`. Тут вот такой вариант:

    Программный код:
    import time

    start_time 
    time.time()
    # Your code execution
    end_time time.time()

    elapsed_time end_time start_time
    print(f'Elapsed time: {elapsed_time} seconds'
    Вот так просто засекать время работы в секундах. Если надо точнее, можно использовать `time.perf_counter()` — он что-то мощнее и поточнее.

  4. Цитата Сообщение от КиберРейнджер
    Привет! Ну, самый простой и популярный вариант — это использовать модуль `time`. Тут вот такой вариант:

    Программный код:
    import time

    start_time 
    time.time()
    # Your code execution
    end_time time.time()

    elapsed_time end_time start_time
    print(f'Elapsed time: {elapsed_time} seconds'
    Вот так просто засекать время работы в секундах. Если надо точнее, можно использовать `time.perf_counter()` — он что-то мощнее и поточнее.
    Нормальные варианты! Чаще сам такой юзаю. А `perf_counter()` вообще четкий для более точных замеров.

  5. Эй, привет! Если нужна более точная инфа по времени, юзай `timeit`. Оно прямо заточено для замеров:

    Программный код:
    import timeit

    code_to_test 
    """
    a = [i for i in range(1000)]
    """

    elapsed_time timeit.timeit(code_to_testnumber=1000)
    print(
    f'Elapsed time: {elapsed_time} seconds'
    Оно прям бенчмаркер для кода, если важны миллисекундные замеры.

  6. Цитата Сообщение от AnnaKarenina
    Эй, привет! Если нужна более точная инфа по времени, юзай `timeit`. Оно прямо заточено для замеров:

    Программный код:
    import timeit

    code_to_test 
    """
    a = [i for i in range(1000)]
    """

    elapsed_time timeit.timeit(code_to_testnumber=1000)
    print(
    f'Elapsed time: {elapsed_time} seconds'
    Оно прям бенчмаркер для кода, если важны миллисекундные замеры.
    Во, `timeit` вообще топовая тема, идеально для бенчмарков. Тру шняга!

  7. Я тут попробовал через `datetime`, хотя это немного иной способ, но тоже валидный:

    Программный код:
    from datetime import datetime

    start_time 
    datetime.now()
    # Your code execution
    end_time datetime.now()

    elapsed_time end_time start_time
    print(f'Elapsed time: {elapsed_time}'
    Правда, он работает с датами и временем в более общем смысле, не такой точный как `time` и `timeit`.

  8. Цитата Сообщение от MaxWarrior
    Я тут попробовал через `datetime`, хотя это немного иной способ, но тоже валидный:

    Программный код:
    from datetime import datetime

    start_time 
    datetime.now()
    # Your code execution
    end_time datetime.now()

    elapsed_time end_time start_time
    print(f'Elapsed time: {elapsed_time}'
    Правда, он работает с датами и временем в более общем смысле, не такой точный как `time` и `timeit`.
    Ну, для таких задач `datetime` всё же избыточен, соглашусь. Но попробовать интересно было, чо.

  9. Кстати, читал что в новых версиях Питона добавили всякие типа `time.process_time` и пр. Это для замеров ЦПУ времени. Пример:

    Программный код:
    import time

    start_time 
    time.process_time()
    # Your code execution
    end_time time.process_time()

    elapsed_time end_time start_time
    print(f'Elapsed CPU time: {elapsed_time} seconds'
    Вещь полезная, если надо замерить именно процессорное время.

  10. Цитата Сообщение от TanyaIce
    Кстати, читал что в новых версиях Питона добавили всякие типа `time.process_time` и пр. Это для замеров ЦПУ времени. Пример:

    Программный код:
    import time

    start_time 
    time.process_time()
    # Your code execution
    end_time time.process_time()

    elapsed_time end_time start_time
    print(f'Elapsed CPU time: {elapsed_time} seconds'
    Вещь полезная, если надо замерить именно процессорное время.
    Ничо так! Про `process_time()` не слышал. Надо будет заценить!

Страница 1 из 2 12 ПоследняяПоследняя