Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
performance
#1
Hi,

Do you know any good diagnostic tool to compare 2 implementations?

First:
def converterA(qdate, qtime):
    """
    :param qdate: DDMMYY
    :param qtime: HHMMSS
    :return: YY-MM-DD HH-MM-SS
    """
    if not isinstance(qdate, str) or not isinstance(qtime, str):
        raise TypeError("parameters must be strings and valid datetime format (qdate: DDMMYY; qtime: HHMMSS)")
    from datetime import datetime

    return str(datetime.strptime(qdate + qtime, '%d%m%y%H%M%S'))
Second:
def converterB(qdate, qtime):
    """
    :param qdate: DDMMYY
    :param qtime: HHMMSS
    :return: YY-MM-DD HH-MM-SS
    """
    if not isinstance(qdate, str) or not isinstance(qtime, str):
        raise TypeError("parameters must be strings and valid datetime format (qdate: DDMMYY; qtime: HHMMSS)")
    """
    :param qdate: DDMMYY
    :param qtime: HHMMSS
    :return: YY-MM-DD HH-MM-SS
    """
    day = qdate[:2]
    month = qdate[2:4]
    year = '20{}'.format(qdate[4:])
    hour = qtime[:2]
    minute = qtime[2:4]
    second = qtime[4:]
    return '{}-{}-{} {}:{}:{}'.format(year, month, day, hour, minute, second)
    
I'd like to know which one is faster. According to unittest the 2nd one, but is this reliable?

import unittest
from converter import *


class ConverterB(unittest.TestCase):
    def test_valids(self):
        for i in range(10000000):
            self.assertEqual(converterB("021020", "010000"), "2020-10-02 01:00:00")
Reply


Messages In This Thread
performance - by kerzol81 - Oct-07-2019, 09:30 AM
RE: performance - by buran - Oct-07-2019, 10:19 AM

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020