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 Functions, Packing, and Unpacking Packing and Unpacking Unpacking Challenge

Lucas Eiruff
Lucas Eiruff
1,446 Points

Unpacking tuple into 2 variables

I am unsure what this challenge is asking me to do?

def unpacker(*args):
    val1, val2 = (args[0], args[1])
    return val1, val2

val = unpacker('Python', 'rocks!')

3 Answers

Chris Freeman
Chris Freeman
Treehouse Moderator 68,423 Points

Task 1 of the challenge asks "Edit the variable assignment under the provided function so that the tuple returned from the function call is unpacked into 2 variables, val1, val2".

The function unpacker returns a tuple of all the args. In the original assignment, the entire tuple is assigned to the variable val. The challenge is asking to change the assignment statement by using two variables on the left side of the assignment so that the returned tuple is unpacked into individual items. The function should remain unchanged.

Post back if you need more help. Good luck!!

def unpacker(): return(1, 2) val1, val2 = ('Mcnamara, Chiwaye')

Python Development Techdegree Student 1,653 Points

This one got me for some reason too. When they give you the initial code it has val = unpacked('Python', 'rocks!')

If you take the initial "val" variable, then turn that into "val1", "val2" so it looks like this: val1, val2 = unpacker('Python', 'rocks!')

It's similar to how they used the code in the video just before with: first, last = input('Enter your full name: \n').split(' ')

this was my code:

def unpacker(*args): return args

val1, val2 = unpacker('Python', 'rocks!')