Strings in Python are immutable. You need to return the string from enterText() so you can use it within start().
>>> def enterText():
return input("enter text: ")
>>> def start():
text = enterText()
print ("you entered: " + str(text))
A given string object cannot be changed. When you call enterText(text), value will refer to the empty string object created within start().
Assigning to value then rebinds the variable, i.e. it connects the name "value" with the object referenced by the right-hand side of the assignment. An assignment to a plain variable does not modify an object.
The text variable, however, will continue to refer to the empty string until you assign to text again. But since you don't do that, it can't work.
returnthe command?