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) Number Game App String length

Having some trouble

Need a little assistance with this.

strlen.py
def just_right(runner):
  while len(runner) < 5:
    return "Your string is too short"
  else: 
    return "Your string is too long"
  print(True)

2 Answers

Haider Ali
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Haider Ali
Python Development Techdegree Graduate 24,728 Points

Hi there Makan. I have taken a look at your code and seen that your while loop is not necessary. All you need is a conditional statement. If the length of the string is smaller than 5, return 'Your string is too short'. If it is greater, return 'Your string is too long'. If it is neither, return True:

def just_right(runner):

  if len(runner) < 5:
    return "Your string is too short"
  elif len(runner) > 5: 
    return "Your string is too long"
  else:
    return True
Andrey Chernykh
PLUS
Andrey Chernykh
Courses Plus Student 2,552 Points

Create a new function named just_right that takes a single argument, a string. If the length of the string is less than five characters, return "Your string is too short". If the string is longer than five characters, return "Your string is too long". Otherwise, just return True.

There is no need of using While in this case, you just need to check If string is shorter or longer if non of those than return True (not print)

def just_right(runner):
  if len(runner) < 5:
    return "Your string is too short"
  elif len(runner)>5: 
    return "Your string is too long"
  else:
    return True