(choices)
return list(
        map(
            str,
            sorted(choices.keys(), key=lambda v: v if type(v) == int else -1),
        )
    )
Helper function that transforms choices dict to an ordered string list.
    Numeric values are sorted and placed after string values.

    :param dict choices: The dict containing available choices.
    :rtype: list[str]

    >>> choices_to_list({0: 0, 1: 1, 2: 2, "foo": 2})
    ['foo', '0', '1', '2']
Helper function that transforms choices dict to an ordered string list.
    Numeric values are sorted and placed after string values.
Helper function that transforms choices dict to an ordered string list . Numeric values are sorted and placed after string values .
def choices_to_list(choices):
    """Helper function that transforms choices dict to an ordered string list.
    Numeric values are sorted and placed after string values.

    :param dict choices: The dict containing available choices.
    :rtype: list[str]

    >>> choices_to_list({0: 0, 1: 1, 2: 2, "foo": 2})
    ['foo', '0', '1', '2']
    """
    return list(
        map(
            str,
            sorted(choices.keys(), key=lambda v: v if type(v) == int else -1),
        )
    )
def choices_to_list ( choices ) : return list ( map ( str , sorted ( choices . keys ( ) , key = lambda v : v if type ( v ) == int else - 1 ) , ) )