1

I am trying to make user enter more than 3 letters for their name I cant seems to figure out how can I do that?

while True:
    name = input ("Enter Your Name: ")
    age = int(input("Enter Your age: "))
    if not str(name):
         if len(name) <3 :
            put_text("enter again")
            break
    else:
        put_text("Hi", name, "You are", age, "Years old")
bad_coder
  • 11,289
  • 20
  • 44
  • 72

2 Answers2

1

This is what you need. Loop until you get success, THEN take your action.

while True:
    name = input ("Enter Your Name: ")
    age = int(input("Enter Your age: "))
    if len(name) < 3:
        put_text("enter again")
    else:
        break
put_text("Hi", name, "You are", age, "Years old")
Tim Roberts
  • 48,973
  • 4
  • 21
  • 30
1

Try creating a function and calling it when len of name is less than three

def names():
    name = input("Enter Your Name: ")
    age = int(input("Enter Your age: "))
    if len(name) <3 :
        put_text("enter again")
        names() # call names function if len of name is less than 3
    else:
        put_text("Hi", name, "You are", age, "Years old")
        
names()

Enter Your Name:  ab
Enter Your age:  1
enter again
Enter Your Name:  abc
Enter Your age:  1
Hi abc You are 1 Years old
It_is_Chris
  • 13,504
  • 2
  • 23
  • 41