Help with Python- making list functions:
def get_str_list(list_strs):
"""(list of lists of strs) -> list of strs
Return a new list of strings, where each string is the concatenation of the strings from the corresponding element of list_strs"""
Can someone help me with making this function? I know what it's asking but I don't know where to start...

OpenStudy is now Brainly!

Help with Python- making list functions:
def get_str_list(list_strs):
"""(list of lists of strs) -> list of strs
Return a new list of strings, where each string is the concatenation of the strings from the corresponding element of list_strs"""
Can someone help me with making this function? I know what it's asking but I don't know where to start...

Computer Science

Stacey Warren - Expert brainly.com

Hey! We 've verified this expert answer for you, click below to unlock the details :)

More answers

I tried testing it but it keeps saying "NameError: name 'concat_list' is not defined". I don't know why there's an error....

anonymous

6 years ago

Hmm... and you copied and pasted it?

he66666

6 years ago

yes, and I rearranged it and indented in the way it was posted here. There shouldn't be a reason an error would occur...

anonymous

6 years ago

Can you post here what you have now?

he66666

6 years ago

def get_str_list(list_strs):
"""(list of lists of strs) -> list of strs
Return a new list of strings, where each string is the concatenation of the strings from the corresponding element of list_strs"""
concat_list = []
for outer in list_strs:
concat_str = ''
for inner in outer:
concat_str += inner
concat_list.append(concat_str)
return concat_list

anonymous

6 years ago

huh. I just copied and pasted that and it works. But did you add additional code to feed to that function? I've added an extra line at the end, here. Did you add something else that might be causing the error?
def get_str_list(list_strs):
"""(list of lists of strs) -> list of strs
Return a new list of strings, where each string is the concatenation of the strings from the corresponding element of list_strs"""
concat_list = []
for outer in list_strs:
concat_str = ''
for inner in outer:
concat_str += inner
concat_list.append(concat_str)
return concat_list
print get_str_list([['a','b','c'],['x','y','z']])

he66666

6 years ago

Oh now it works! something must've gone wrong before. Thanks so much keketsu!
but can you explain concat_str = '' and concat_str += inner? I don't really get it..

anonymous

6 years ago

Sure thing. Oh, I used single quotes there which may have thrown you off.
concat_str = "" just declares the variable concat_str and sets it to an empty string.
concat_str += inner is the same as concat_str = concat_str + inner
So you begin with an empty string, then add inner to it (the first item in the list), and continue to add list items until they're exhausted.