Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Python Basics (2015) Python Data Types Use .split() and .join()

Eric Watters
Eric Watters
2,615 Points

.split, .join, code challenge... how do i complete task 3 of 3?

I can't figure out the 3rd task of this code challenge.

banana.py
available = "banana split;hot fudge;cherry;malted;black and white"
sundaes=available.split(';')
menu="Our available flavors are: {}."
Eric Watters
Eric Watters
2,615 Points

Below is the prompt to the task...

Alright, let's finish making our menu. Combine the sundaes list into a new string, joining them with a comma and a space (", "). Use that string with a .format() on our existing menu variable and replace the current value of menu

1 Answer

Chris Freeman
MOD
Chris Freeman
Treehouse Moderator 68,423 Points

This task is asking you to recombine sundaes into a new string using "," as a separator. Then use this string to fill in the .format() field signified by the {} braces. This might confuse some, as you had just split() the string, now you're re-joining it. The challenge could also have accomplished this by using a string substitution replacing ";" with ",". So the two steps you need are: create joined string, and use .format() to populate menu:

available = "banana split;hot fudge;cherry;malted;black and white"
sundaes = available.split(';')
# join the string
string = ", ".join(sundaes)
# using format()
menu = "Our available flavors are: {}.".format(string)

# these can be combined
# using format()
menu = "Our available flavors are: {}.".format(", ".join(sundaes))
Eric Watters
Eric Watters
2,615 Points

ahh ok that makes sense. I think i was combining the two and it wanted them separate. it works now though, Thank you!