Learn Python List Comprehension by Building a Case Converter Program - Step 21

Tell us what’s happening:

I’m not sure how to do the modification of what it wants me to do, so I’m just randomly experimenting with what I already know

Your code so far

def convert_to_snake_case(pascal_or_camel_cased_string):
    # snake_cased_char_list = []
    # for char in pascal_or_camel_cased_string:
    #     if char.isupper():
    #       converted_character = '_' + char.lower()
    #       snake_cased_char_list.append(converted_character)
    #     else:
    #         snake_cased_char_list.append(char)
    # snake_cased_string = ''.join(snake_cased_char_list)
    # clean_snake_cased_string = snake_cased_string.strip('_')

    # return clean_snake_cased_string


# User Editable Region

    snake_cased_char_list = ['_' + char.lower() for char in pascal_or_camel_cased_string if char.isupper()
    else:
        char]

# User Editable Region

    return ''.join(snake_cased_char_list).strip('_')

def main():
    print(convert_to_snake_case('aLongAndComplexString'))

main()

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36

Challenge Information:

Learn Python List Comprehension by Building a Case Converter Program - Step 21

Please read again the instructions and pay attention to the syntax.

Note that, differently from the if clause, the if/else construct must be placed between the expression and the for keyword.

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge.

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.

The structure of the sequence is expression if [...] else [...] for [...]

Like the example:

[expression_if_true if condition else expression_if_false for item in iterable]
1 Like

Hi, please refrain from responding to these months dormant threads. The OP has likely moved on at this point. Thank you, Happy new year!