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()

Andrew Fuselier
Andrew Fuselier
288 Points

Combining a string with .join()

Here's the task text.

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.

I created a new variable, 'string', and used .format to append it to the end of 'menu'. I don't understand what I'm doing wrong. This works from the python prompt.

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

2 Answers

Steven Parker
Steven Parker
231,248 Points

You don't want to print anything for this challenge, but you do need to assign the result back to the menu variable.

Also, I don't think the challenge likes the parentheses around the literal string on line 4.

You were really close. Fix those two issues, and you'll have it.

Andrew Fuselier
Andrew Fuselier
288 Points

Great, that solved it! Thanks for your help Steven.

Elad Ohana
Elad Ohana
24,456 Points

You should have a print command for your menu variable on your last line, otherwise it's not outputting it anywhere. It works with the python prompt because it will display values of anything you type in by default.