def upper_camel(string, prefix='', suffix=''):
    """
    Generate a camel-case identifier with the first word capitalised.
    Useful for class names.

    Takes a string, prefix, and optional suffix.

    `prefix` can be set to `''`, though be careful - without a prefix, the
    function will throw `InvalidIdentifier` when your string starts with a
    number.

    Example:
        >>> upper_camel("I'm a class", prefix='')
        'IAmAClass'
    """

    return require_valid(append_underscore_if_keyword(''.join(
        upper_case_first_char(word)
        for word in en.words(' '.join([prefix, string, suffix])))
    ))
def upper_camel ( string , prefix = '' , suffix = '' ) : return require_valid ( append_underscore_if_keyword ( '' . join ( upper_case_first_char ( word ) for word in en . words ( ' ' . join ( [ prefix , string , suffix ] ) ) ) ) )
Generate a camel-case identifier with the first word capitalised.
    Useful for class names.

    Takes a string, prefix, and optional suffix.

    `prefix` can be set to `''`, though be careful - without a prefix, the
    function will throw `InvalidIdentifier` when your string starts with a
    number.

    Example:
        >>> upper_camel("I'm a class", prefix='')
        'IAmAClass'