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![](https://ecs-static.teamtreehouse.com/assets/views/marketing/shared/community-banner-white-47072046c51352fe6a69f5e691ff5700b28bb11d45197d7bdf066d9ea3f72d0c.webp)
![Jorge Grajeda](https://secure.gravatar.com/avatar/4566df197e3b17d09ad1e673e2726dee?s=96&d=https%3A%2F%2Fecs-static.teamtreehouse.com%2Fassets%2Fcontent%2Fdefault_avatar-445fbbabfc8dc9188fb5967fe43322ee0c3e0dd1e10f378bf8343784af5a13eb.webp&r=pg)
Jorge Grajeda
Python Development Techdegree Graduate 8,186 PointsCan somebody please explain why does it continue to say too many values to unpack ?
def splitsville(address):
dictionary = {'street': street,
'city': city,
'state': state,
'zip_code': zip_code}
address = dictionary.split()
return dictionary
2 Answers
![Steven Parker](https://uploads.teamtreehouse.com/production/profile-photos/969492/micro_tool_chess_set_2.jpg)
Steven Parker
230,688 PointsThere's a few issues, here are some hints:
- street, city, state, and zip_code are referenced but never created
- you'll need to split the address string to get the values for these
- be sure to choose the correct delimiter string to split on
![Brent Thomas](https://uploads.teamtreehouse.com/production/profile-photos/11702733/micro_Kenneth_Thomas.jpg)
Brent Thomas
Data Analysis Techdegree Student 6,032 PointsHi Jorge! Split is not a Dictionary method so I believe the line "address = dictionary.split()" is the cause of your error.
![Jorge Grajeda](https://secure.gravatar.com/avatar/4566df197e3b17d09ad1e673e2726dee?s=60&d=https%3A%2F%2Fecs-static.teamtreehouse.com%2Fassets%2Fcontent%2Fdefault_avatar-445fbbabfc8dc9188fb5967fe43322ee0c3e0dd1e10f378bf8343784af5a13eb.webp&r=pg)
Jorge Grajeda
Python Development Techdegree Graduate 8,186 PointsWould I just replace the Dictionary with something else then ?
![Brent Thomas](https://uploads.teamtreehouse.com/production/profile-photos/11702733/micro_Kenneth_Thomas.jpg)
Brent Thomas
Data Analysis Techdegree Student 6,032 PointsIt depends - I’m not 100% sure what you’re trying to accomplish but I think your hoping to pass the address argument to your function and then store its values in the dictionary.
Whether or not you use .split() depends on the object type of address that you are passing into your function.
If address is a list and you know the position of your elements you could do something like
Dictionary = { ‘street’: address[0], ‘city’: address[1], …… }
If address is a string you can call split on address, which will return a list, and then you can store those values in the dictionary in a ways similar to how I showed above.
addressList = address.split() Dictionary = { ‘street’: addressList[0], ‘city’: addressList[1], …. }