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 Getting Info In and Out of Functions Functions with Arguments and Returns

how do i save the returned value?

i tried

hello = return "Hello" + name

however this did not work

creating_functions.py
def hello_student (name):
    return "Hello " + name



hello_student(Krishna)

2 Answers

Steven Parker
Steven Parker
229,644 Points

You're close, but:

  • you need to assign the variable "hello" from your function
  • the argument needs to be enclosed in quotes
hello = hello_student("Krishna")

This is what the challenge is asking:

Write a function called hello_student. This function should receive one argument, name. This function should return one value, the string 'Hello ' followed by the value of the name parameter.

In theory, this should be all that is needed for the solution:

def hello_student(name): return 'Hello' , name

or

def hello_student(name): return 'Hello' name

Neither work, so there must be something that they've sort of left out.

Steven Parker
Steven Parker
229,644 Points

Neither of those quite work in theory.   "return 'Hello', name" would return a tuple instead of a string, and "return 'Hello' name" is missing the concatenation operator "+". But the correct function for task 1 is seen in the second example above.

What "did not work" in that example was the call after the function, added for task 2.