I'm making this program that prompts the user to enter their name and from there generate a username for them, like so:
Please enter your name: Stack Overflow
Your username is sove001
This is my code so far:
def get_name():
name = str(input("Please enter your name: "))
return name
def process_name(name):
first_letter = name[0]
first_space = name.find(" ")
three_surname = name[first_space+1:first_space+4]
nick_name = first_letter + three_surname
final_name = nick_name.lower()
return final_name
def zero_extend_number(number, length):
number_str = str(number)
padded_number = number_str.rjust(length, '0')
return padded_number
def generate_username(number, number_length):
get_name()
process_name(name)
zero_extend_number(number, length)
completed_name = final_name + padded_number
print("Your username is: {}".format(completed_name))
generate_username(1,4)
Running this gives the following ouput:
NameError: name 'name' is not defined
I'm not really sure what is wrong with my code, have I missed something?