import decimal


def truncate_decimal_places(value: decimal.Decimal, places: int = 1) -> float:
    """
    Truncate a float (i.e round towards zero) to a given number of decimal places.

    NB: Takes a decimal but returns a float!

    >>> truncate_decimal_places(12.364, 1)
    12.3

    >>> round_decimal_places(-12.364, 1)
    -12.3 # -12.3 is bigger than -12.4

    >>> round_decimal_places(12.364, 0)
    12.0 # rounding to 0 returns float with no decmial part
    """

    if places == 0:
        quantize_string = "1"
    else:
        quantize_string = "0." + ((places - 1) * "0") + "1"

    exponent = decimal.Decimal(quantize_string)
    decimal_result = value.quantize(exponent, rounding=decimal.ROUND_DOWN)
    return float(decimal_result)