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

Tell us what’s happening:

My thing it saying to add an if clause with the condition char.isupper() to your list comprehension. I saw that it said not use an else only an if but if you delete the else part it says you need an else.

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

    #User Editable Zone
    snake_cased_char_list = ['_' + char.lower() if char.isupper() else char for char in pascal_or_camel_cased_string]
    #User Editable Zone

# 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/131.0.0.0 Safari/537.36

Challenge Information:

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

Hi @shravanregunath112

Try adding the if statement at the end of the list comprehension.

Happy coding

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.