def validNumber(valueToTest):
    """Determines if valueToTest is considered to be a number. This includes strings representing a number. 
    If an int or float are passed then the answer is True. 
    
    If a string is provided it is evaluated to only contain digits, sign and a decimal point. string evaluation does not yet take into account nationalization such as comma for seperating 1000's or any financial symbology
    
    :param valueToTest: variable to consider
    :type valueToTest: Any
    
    :return: True or False
    :rtype: bool
    
    """
    if isinstance(valueToTest, (int, float)):
        return True
    if isinstance(valueToTest, str):
        import re
        match = re.match('^[-0123456789.]*$', valueToTest)
        return match is not None
    return False
