def factorize(number):
    """
    Get the prime factors of an integer except for 1.

    Parameters
    ----------
    number : int

    Returns
    -------
    primes : iterable

    Examples
    --------
    >>> factorize(-17)
    [-1, 17]
    >>> factorize(8)
    [2, 2, 2]
    >>> factorize(3**25)
    [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
    >>> factorize(1)
    [1]
    """
    if not isinstance(number, int):
        raise ValueError('integer expected, but type(number)={}'
                         .format(type(number)))
    if number < 0:
        return [-1] + factorize(number * (-1))
    elif number == 0:
        raise ValueError('All primes are prime factors of 0.')
    else:
        for i in range(2, int(math_stl.ceil(number**0.5)) + 1):
            if number % i == 0:
                if i == number:
                    return [i]
                else:
                    return [i] + factorize(int(number / i))
        return [number]
def factorize ( number ) : if not isinstance ( number , int ) : raise ValueError ( 'integer expected, but type(number)={}' . format ( type ( number ) ) ) if number < 0 : return [ - 1 ] + factorize ( number * ( - 1 ) ) elif number == 0 : raise ValueError ( 'All primes are prime factors of 0.' ) else : for i in range ( 2 , int ( math_stl . ceil ( number ** 0.5 ) ) + 1 ) : if number % i == 0 : if i == number : return [ i ] else : return [ i ] + factorize ( int ( number / i ) ) return [ number ]
Get the prime factors of an integer except for 1.

    Parameters
    ----------
    number : int

    Returns
    -------
    primes : iterable

    Examples
    --------
    >>> factorize(-17)
    [-1, 17]
    >>> factorize(8)
    [2, 2, 2]
    >>> factorize(3**25)
    [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
    >>> factorize(1)
    [1]