def _etextno_to_uri_subdirectory(etextno):
    """Returns the subdirectory that an etextno will be found in a gutenberg
    mirror. Generally, one finds the subdirectory by separating out each digit
    of the etext number, and uses it for a directory. The exception here is for
    etext numbers less than 10, which are prepended with a 0 for the directory
    traversal.

    >>> _etextno_to_uri_subdirectory(1)
    '0/1'
    >>> _etextno_to_uri_subdirectory(19)
    '1/19'
    >>> _etextno_to_uri_subdirectory(15453)
    '1/5/4/5/15453'
    """
    str_etextno = str(etextno).zfill(2)
    all_but_last_digit = list(str_etextno[:-1])
    subdir_part = "/".join(all_but_last_digit)
    subdir = "{}/{}".format(subdir_part, etextno)  # etextno not zfilled
    return subdir
Returns the subdirectory that an etextno will be found in a gutenberg
    mirror. Generally, one finds the subdirectory by separating out each digit
    of the etext number, and uses it for a directory. The exception here is for
    etext numbers less than 10, which are prepended with a 0 for the directory
    traversal.

    >>> _etextno_to_uri_subdirectory(1)
    '0/1'
    >>> _etextno_to_uri_subdirectory(19)
    '1/19'
    >>> _etextno_to_uri_subdirectory(15453)
    '1/5/4/5/15453'