An error occurred while loading the file. Please try again.
utils.py 1.51 KiB
from datetime import datetime
import time
def format_datetime(dt):
    return dt.strftime('%Y-%m-%d %H:%M:%S')
def format_date(dt):
    return dt.strftime('%Y-%m-%d')
def format_time_ms(float_time):
    local_time = time.localtime(float_time)
    data_head = time.strftime("%Y-%m-%d %H:%M:%S", local_time)
    data_secs = (float_time - int(float_time)) * 1000
    return "%s.%03d" % (data_head, data_secs)
def get_parameter(kwargs, key, default=None):
    """ Get a specified named value for this (calling) function
    The parameter is searched for in kwargs
    :param kwargs: Parameter dictionary
    :param key: Key e.g. 'max_workers'
    :param default: Default value
    :return: result
    """
    if kwargs is None:
        return default
    value = default
    if key in kwargs.keys():
        value = kwargs[key]
    return value
def to_int(s, default_value = 0):
    try:
        return int(s)
    except:
        return default_value
def singleton(cls):
    _instance = {}
    def inner():
        if cls not in _instance:
            _instance[cls] = cls()
        return _instance[cls]
    return inner
def revoke(cmd, desc=''):
    def decorator(func):
        class Wrapper:
            def __init__(self, cmd, desc, func) -> None:
                self.cmd = cmd
                self.func = func
            def __str__(self) -> str:
                return "cmd"
            def __call__(self, *args, **kw):
                return self.func(*args, **kw)
        return Wrapper(cmd, desc, func)
    return decorator