def hint_username(username):
if len(username) < 3:
print("Invalid username. Usernames must have more than 3 characters")
else:
print("valid username")
print (hint_username("charmingchand"))
OUTPUT
Output:
valid username
None
I would like to know why is none appearing here?
You are using print twice. Once in the function and when calling the function.
Please use the bbtags when posting code. You should have a look at the
help section on how to ask a question.
Quick example:
def afunc(arg):
return arg
def afunc2(arg):
print(arg)
print(afunc('I am using a return value and print'))
afunc2('Callinga function that has a print')
print(afunc2('Using both prints. This will return a None'))
Output:
I am using a return value and print
Calling a function that has a print
Using both prints. This will return a None
None
In addition to what it has previously said, that's the
return
content which is returned using
print
(None by default if not specified)
def hint_username(username):
if len(username) < 3:
print("Invalid username. Usernames must have more than 3 characters")
else:
print("valid username")
return None
hint_username("charmingchand")
hint_username("ff")
print()
# with print
print(hint_username("\n"))
print(hint_username("ddddddddddddddddddddddddd\n"))
Output:
valid username
Invalid username. Usernames must have more than 3 characters
Invalid username. Usernames must have more than 3 characters
None
valid username
None